Author: Ronan Lamy <[email protected]>
Branch: py3k
Changeset: r85909:190116421221
Date: 2016-07-29 16:23 +0100
http://bitbucket.org/pypy/pypy/changeset/190116421221/
Log: On Python3, errors raised when trying to access obj.__class__ are
propagated
diff --git a/pypy/module/__builtin__/abstractinst.py
b/pypy/module/__builtin__/abstractinst.py
--- a/pypy/module/__builtin__/abstractinst.py
+++ b/pypy/module/__builtin__/abstractinst.py
@@ -57,8 +57,8 @@
try:
w_abstractclass = space.getattr(w_inst, space.wrap('__class__'))
except OperationError as e:
- if e.async(space): # ignore most exceptions
- raise
+ if not e.match(space, space.w_AttributeError):
+ raise # propagate other errors
return False
else:
return p_abstract_issubclass_w(space, w_abstractclass, w_cls)
@@ -72,8 +72,8 @@
try:
w_abstractclass = space.getattr(w_inst, space.wrap('__class__'))
except OperationError as e:
- if e.async(space): # ignore most exceptions
- raise
+ if not e.match(space, space.w_AttributeError):
+ raise # propagate other errors
else:
if w_abstractclass is not space.type(w_inst):
if space.isinstance_w(w_abstractclass, space.w_type):
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit