Andreas Stührk <andy-pyt...@hammerhartes.de> added the comment: Another thing that can happen is that `__new__()` does return an instance of BaseException, but that the return value is not an instance of the expected class.
Example: class MyException(OSError): def __new__(*args): return Exception() try: raise MyException except OSError as e: print(isinstance(e, OSError)) That would print "False". Currently, the patch doesn't check for that, should it do so? Also, the error message for the 2.7 patch doesn't include that old-style classes are allowed, hence the patch needs to be updated if it should go into 2.7. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue11627> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com