[pypy-svn] r28547 - pypy/dist/pypy/translator/cli

antocuni at codespeak.net antocuni at codespeak.net
Thu Jun 8 17:52:39 CEST 2006


Author: antocuni
Date: Thu Jun  8 17:52:38 2006
New Revision: 28547

Modified:
   pypy/dist/pypy/translator/cli/database.py
Log:
bugfix



Modified: pypy/dist/pypy/translator/cli/database.py
==============================================================================
--- pypy/dist/pypy/translator/cli/database.py	(original)
+++ pypy/dist/pypy/translator/cli/database.py	Thu Jun  8 17:52:38 2006
@@ -251,11 +251,12 @@
         class_name = self.get_type(False)
         ilasm.new('instance void class %s::.ctor()' % class_name)
         for f_name, (FIELD_TYPE, f_default) in self.record._TYPE._fields.iteritems():
-            f_type = self.cts.lltype_to_cts(FIELD_TYPE)
-            value = self.record._items[f_name]
-            ilasm.opcode('dup')
-            AbstractConst.load(self.db, FIELD_TYPE, value, ilasm)            
-            ilasm.set_field((f_type, class_name, f_name))
+            if FIELD_TYPE is not ootype.Void:
+                f_type = self.cts.lltype_to_cts(FIELD_TYPE)
+                value = self.record._items[f_name]
+                ilasm.opcode('dup')
+                AbstractConst.load(self.db, FIELD_TYPE, value, ilasm)            
+                ilasm.set_field((f_type, class_name, f_name))
 
 class StaticMethodConst(AbstractConst):
     def __init__(self, db, sm, count):



More information about the Pypy-commit mailing list