[pypy-svn] r76816 - in pypy/branch/better-map-instances/pypy/module/__builtin__: . test
cfbolz at codespeak.net
cfbolz at codespeak.net
Wed Sep 1 17:55:18 CEST 2010
Author: cfbolz
Date: Wed Sep 1 17:55:16 2010
New Revision: 76816
Modified:
pypy/branch/better-map-instances/pypy/module/__builtin__/interp_classobj.py
pypy/branch/better-map-instances/pypy/module/__builtin__/test/test_classobj.py
Log:
(arigo, cfbolz): please don't subclass old-style InstanceType
Modified: pypy/branch/better-map-instances/pypy/module/__builtin__/interp_classobj.py
==============================================================================
--- pypy/branch/better-map-instances/pypy/module/__builtin__/interp_classobj.py (original)
+++ pypy/branch/better-map-instances/pypy/module/__builtin__/interp_classobj.py Wed Sep 1 17:55:16 2010
@@ -757,6 +757,7 @@
unwrap_spec=['self', ObjSpace]),
**rawdict
)
+W_InstanceObject.typedef.acceptable_as_base_class = False
class W_InstanceObjectWithDel(W_InstanceObject):
def __del__(self):
Modified: pypy/branch/better-map-instances/pypy/module/__builtin__/test/test_classobj.py
==============================================================================
--- pypy/branch/better-map-instances/pypy/module/__builtin__/test/test_classobj.py (original)
+++ pypy/branch/better-map-instances/pypy/module/__builtin__/test/test_classobj.py Wed Sep 1 17:55:16 2010
@@ -767,6 +767,17 @@
finally:
warnings.simplefilter('default', RuntimeWarning)
+ def test_cant_subclass_instance(self):
+ class A:
+ pass
+ try:
+ class B(type(A())):
+ pass
+ except TypeError:
+ pass
+ else:
+ assert 0, "should have raised"
+
class AppTestOldStyleSharing(AppTestOldstyle):
def setup_class(cls):
cls.space = gettestobjspace(**{"objspace.std.withsharingdict": True})
More information about the Pypy-commit
mailing list