[pypy-commit] pypy default: Prebuilt RPython 'iteritems' objects are not supported. In case we see any

arigo noreply at buildbot.pypy.org
Thu Apr 10 12:35:45 CEST 2014


Author: Armin Rigo <arigo at tunes.org>
Branch: 
Changeset: r70534:ea5fb9bdcfe1
Date: 2014-04-10 12:34 +0200
http://bitbucket.org/pypy/pypy/changeset/ea5fb9bdcfe1/

Log:	Prebuilt RPython 'iteritems' objects are not supported. In case we
	see any W_BaseDictMultiIterObject instance, crash early (makes it
	easier to know where it is).

diff --git a/pypy/objspace/std/dictmultiobject.py b/pypy/objspace/std/dictmultiobject.py
--- a/pypy/objspace/std/dictmultiobject.py
+++ b/pypy/objspace/std/dictmultiobject.py
@@ -656,6 +656,10 @@
             return self.len - self.pos
         return 0
 
+    def _cleanup_(self):
+        raise Exception("seeing a prebuilt %r object" % (
+            self.__class__,))
+
 class BaseKeyIterator(BaseIteratorImplementation):
     next_key = _new_next('key')
 
@@ -1191,6 +1195,10 @@
         w_ret = space.newtuple([new_inst, space.newtuple([w_res])])
         return w_ret
 
+    def _cleanup_(self):
+        raise Exception("seeing a prebuilt %r object" % (
+            self.__class__,))
+
 
 class W_DictMultiIterKeysObject(W_BaseDictMultiIterObject):
     def descr_next(self, space):


More information about the pypy-commit mailing list