diff --git a/gym/utils/reraise.py b/gym/utils/reraise.py index 08994c82d..219374a16 100644 --- a/gym/utils/reraise.py +++ b/gym/utils/reraise.py @@ -1,7 +1,7 @@ import sys -# We keep the actual reraising in different modules since the -# Python 2 version SyntaxError's in Python 3. +# We keep the actual reraising in different modules, since the +# reraising code uses syntax mutually exclusive to Python 2/3. if sys.version_info[0] < 3: from .reraise_impl_py2 import reraise_impl else: diff --git a/gym/utils/reraise_impl_py3.py b/gym/utils/reraise_impl_py3.py index 270b3e421..1fc8db55b 100644 --- a/gym/utils/reraise_impl_py3.py +++ b/gym/utils/reraise_impl_py3.py @@ -1,2 +1,4 @@ +# http://stackoverflow.com/a/33822606 -- `from None` disables Python 3' +# semi-smart exception chaining, which we don't want in this case. def reraise_impl(e, traceback): - raise e.with_traceback(traceback) + raise e.with_traceback(traceback) from None