[Python-checkins] r64165 - python/trunk/Lib/test/crashers/loosing_mro_ref.py

armin.rigo python-checkins at python.org
Thu Jun 12 11:50:58 CEST 2008


Author: armin.rigo
Date: Thu Jun 12 11:50:58 2008
New Revision: 64165
Log:
Sounds obvious, but I didn't even realize that you can put non-string
keys in type dictionaries without using this locals() hack.
Modified:
 python/trunk/Lib/test/crashers/loosing_mro_ref.py
Modified: python/trunk/Lib/test/crashers/loosing_mro_ref.py
==============================================================================
--- python/trunk/Lib/test/crashers/loosing_mro_ref.py	(original)
+++ python/trunk/Lib/test/crashers/loosing_mro_ref.py	Thu Jun 12 11:50:58 2008
@@ -27,10 +27,9 @@
 class Base2(object):
 mykey = 'from Base2'
 
-class X(Base):
- # you can't add a non-string key to X.__dict__, but it can be
- # there from the beginning :-)
- locals()[MyKey()] = 5
+# you can't add a non-string key to X.__dict__, but it can be
+# there from the beginning :-)
+X = type('X', (Base,), {MyKey(): 5})
 
 print X.mykey
 # I get a segfault, or a slightly wrong assertion error in a debug build.


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /