Author: Armin Rigo <ar...@tunes.org>
Branch: 
Changeset: r74958:badc6fe2b088
Date: 2014-12-16 17:39 +0100
http://bitbucket.org/pypy/pypy/changeset/badc6fe2b088/

Log:    fix

diff --git a/rpython/annotator/model.py b/rpython/annotator/model.py
--- a/rpython/annotator/model.py
+++ b/rpython/annotator/model.py
@@ -389,6 +389,8 @@
         assert isinstance(dct2, SomeOrderedDict), "OrderedDict.update(dict) 
not allowed"
         dct1.dictdef.union(dct2.dictdef)
 
+SomeDict = SomeOrderedDict
+
 
 class SomeIterator(SomeObject):
     "Stands for an iterator returning objects from a given container."
diff --git a/rpython/rtyper/lltypesystem/rordereddict.py 
b/rpython/rtyper/lltypesystem/rordereddict.py
--- a/rpython/rtyper/lltypesystem/rordereddict.py
+++ b/rpython/rtyper/lltypesystem/rordereddict.py
@@ -563,6 +563,7 @@
         d.num_ever_used_items += 1
         d.num_live_items += 1
 
+@jit.dont_look_inside
 def _ll_dict_rescue(d):
     # MemoryError situation!  The 'indexes' contains an invalid entry
     # at this point.  But we can call ll_dict_reindex() with the
@@ -588,6 +589,7 @@
 def _ll_len_of_d_indexes(d):
     # xxx Haaaack: returns len(d.indexes).  Works independently of
     # the exact type pointed to by d, using a forced cast...
+    # Must only be called by @jit.dont_look_inside functions.
     return len(rffi.cast(DICTINDEX_BYTE, d.indexes))
 
 def _overallocate_entries_len(baselen):
_______________________________________________
pypy-commit mailing list
pypy-commit@python.org
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to