#Issue 6795:  Fix infinite recursion in long(Decimal('nan'));  change int(Decimal('nan')) to raise ValueError instead of either returning NaN or raising InvalidContext.
diff --git a/Lib/decimal.py b/Lib/decimal.py
index 1f5c920..a87a4a5 100644
--- a/Lib/decimal.py
+++ b/Lib/decimal.py
@@ -1555,10 +1555,9 @@
         """Converts self to an int, truncating if necessary."""
         if self._is_special:
             if self._isnan():
-                context = getcontext()
-                return context._raise_error(InvalidContext)
+                raise ValueError("Cannot convert NaN to integer")
             elif self._isinfinity():
-                raise OverflowError("Cannot convert infinity to int")
+                raise OverflowError("Cannot convert infinity to integer")
         s = (-1)**self._sign
         if self._exp >= 0:
             return s*int(self._int)*10**self._exp