-
Notifications
You must be signed in to change notification settings - Fork 282
Closed
Description
import collections
from typing import MutableMapping, TypeVar, Generic
_KT = TypeVar('_KT')
_VT = TypeVar('_VT')
class MyMutableMapping(collections.MutableMapping, MutableMapping[_KT, _VT], Generic[_KT, _VT]):
pass
class OtherMutableMapping(object):
pass
collections.MutableMapping.register(OtherMutableMapping)
Running this code under python2 results in the following error:
raceback (most recent call last):
File "t2.py", line 13, in <module>
collections.MutableMapping.register(OtherMutableMapping)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py", line 109, in register
if issubclass(subclass, cls):
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py", line 180, in __subclasscheck__
if issubclass(subclass, scls):
File "/usr/local/lib/python2.7/site-packages/typing.py", line 1056, in __subclasscheck__
return issubclass(cls, self.__extra__)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py", line 180, in __subclasscheck__
if issubclass(subclass, scls):
File "/usr/local/lib/python2.7/site-packages/typing.py", line 1056, in __subclasscheck__
return issubclass(cls, self.__extra__)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py", line 180, in __subclasscheck__
<snip>
if issubclass(subclass, scls):
File "/usr/local/lib/python2.7/site-packages/typing.py", line 1056, in __subclasscheck__
return issubclass(cls, self.__extra__)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py", line 180, in __subclasscheck__
if issubclass(subclass, scls):
File "/usr/local/lib/python2.7/site-packages/typing.py", line 1056, in __subclasscheck__
return issubclass(cls, self.__extra__)
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/abc.py", line 151, in __subclasscheck__
if subclass in cls._abc_cache:
RuntimeError: maximum recursion depth exceeded
Metadata
Metadata
Assignees
Labels
No labels