From 29279f305e98b74d48f4c79ce9d9b348cbb51b33 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Thu, 6 Nov 2008 01:58:07 -0600 Subject: [PATCH] Fix 32-bit bootstrap --- basis/bootstrap/image/image.factor | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/basis/bootstrap/image/image.factor b/basis/bootstrap/image/image.factor index 80571d20b1..3816b930e0 100644 --- a/basis/bootstrap/image/image.factor +++ b/basis/bootstrap/image/image.factor @@ -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? [ ] when ] map + emit-array + ] cache-object ; ! Quotations