◐ Shell
clean mode source ↗

Issue 2319: abc.py:ABCMeta.__instancecheck__ broken for old style classes

The following short program raises an exception:

import UserList

class C:
    pass
   
print isinstance(C, UserList.UserList)

---------
exception:
Traceback (most recent call last):
  File "t.py", line 6, in <module>
    print isinstance(C, UserList.UserList)
  File "/home/ralf/py26/lib/python2.6/abc.py", line 120, in
__instancecheck__
    subclass = instance.__class__
AttributeError: class C has no attribute '__class__'

If I use a new style class it works.