]> gitweb.factorcode.org Git - factor.git/commitdiff
Fix 32-bit bootstrap
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Thu, 6 Nov 2008 07:58:07 +0000 (01:58 -0600)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Thu, 6 Nov 2008 07:58:07 +0000 (01:58 -0600)
basis/bootstrap/image/image.factor

index 80571d20b124a8d7abb9dc172ced4f49887ad653..3816b930e0fbe6c9715887eb4f63de834ecec70b 100644 (file)
@@ -374,10 +374,12 @@ M: tombstone '
     [ emit-tuple ] cache-object ;
 
 ! Arrays
-M: array '
+: emit-array ( array -- offset )
     [ ' ] map array type-number object tag-number
     [ [ length emit-fixnum ] [ emit-seq ] bi ] emit-object ;
 
+M: array ' emit-array ;
+
 ! This is a hack. We need to detect arrays which are tuple
 ! layout arrays so that they can be internalized, but making
 ! them a built-in type is not worth it.
@@ -389,7 +391,11 @@ PREDICATE: tuple-layout-array < array
         tri and and
     ] [ drop f ] if ;
 
-M: tuple-layout-array ' [ call-next-method ] cache-object ;
+M: tuple-layout-array '
+    [
+        [ dup integer? [ <fake-bignum> ] when ] map
+        emit-array
+    ] cache-object ;
 
 ! Quotations