[pypy-svn] r53377 - in pypy/branch/less-meta-instances/pypy: rpython/lltypesystem translator/backendopt

antocuni at codespeak.net antocuni at codespeak.net
Sat Apr 5 10:33:19 CEST 2008


Author: antocuni
Date: Sat Apr  5 10:33:18 2008
New Revision: 53377

Modified:
   pypy/branch/less-meta-instances/pypy/rpython/lltypesystem/rclass.py
   pypy/branch/less-meta-instances/pypy/translator/backendopt/inline.py
Log:
fix inline.py to use the new interface for getruntime(); relax a bit
the assert in getruntime to allow also a subtype of CLASSTYPE



Modified: pypy/branch/less-meta-instances/pypy/rpython/lltypesystem/rclass.py
==============================================================================
--- pypy/branch/less-meta-instances/pypy/rpython/lltypesystem/rclass.py	(original)
+++ pypy/branch/less-meta-instances/pypy/rpython/lltypesystem/rclass.py	Sat Apr  5 10:33:18 2008
@@ -168,7 +168,7 @@
         return vtable
 
     def getruntime(self, expected_type):
-        assert expected_type == CLASSTYPE
+        assert lltype.castable(CLASSTYPE, expected_type) >= 0
         return self.getvtable()
 
     def setup_vtable(self, vtable, rsubcls):

Modified: pypy/branch/less-meta-instances/pypy/translator/backendopt/inline.py
==============================================================================
--- pypy/branch/less-meta-instances/pypy/translator/backendopt/inline.py	(original)
+++ pypy/branch/less-meta-instances/pypy/translator/backendopt/inline.py	Sat Apr  5 10:33:18 2008
@@ -388,7 +388,7 @@
             classdef = self.lltype_to_classdef[VALUE]
             rtyper = self.translator.rtyper
             classrepr = rclass.getclassrepr(rtyper, classdef)
-            vtable = classrepr.getruntime()
+            vtable = classrepr.getruntime(classrepr.lowleveltype)
             var_etype = copiedlink.args[0]
             var_evalue = copiedlink.args[1]
             for exceptionlink in afterblock.exits[1:]:



More information about the Pypy-commit mailing list