On Thursday 03 January 2002 12:33 am, Bryan C. Warnock wrote:
> Looks like the chunk_base logic doesn't work on 64-bit Solaris.  Every
> test failure I checked was centered around an inaccesable address coming
> out of STACK_CHUNK_BASE(*top) [line 85] .  I'll dig deeper tomorrow.  Er,
> today.

Passes on 64-bit Solaris.  (And 32-bit Linux.)  Probably more correct 
regardless, as longs are almost always the same size as pointers, whereas 
ints aren't.

--- ../parrot/Configure.pl      Wed Jan  2 22:53:29 2002
+++ ./Configure.pl      Wed Jan  2 22:53:29 2002
@@ -141,11 +141,11 @@
     debugging     => $opt_debugging,
     rm_f          => 'rm -f',
     rm_rf         => 'rm -rf',
-    stacklow      => '(~0xfff)U',
-    intlow        => '(~0xfff)U',
-    numlow        => '(~0xfff)U',
-    strlow        => '(~0xfff)U',
-    pmclow        => '(~0xfff)U',
+    stacklow      => '(~0xfff)UL',
+    intlow        => '(~0xfff)UL',
+    numlow        => '(~0xfff)UL',
+    strlow        => '(~0xfff)UL',
+    pmclow        => '(~0xfff)UL',
     make          => $Config{make},
     make_set_make => $Config{make_set_make},

@@ -701,7 +701,7 @@
         my $vector = unpack("b*", pack("V", $_));
         my $offset = rindex($vector, "1")+1;
         my $mask = 2**$offset - 1;
-        push @returns, "(~0x".sprintf("%x", $mask)."U)";
+        push @returns, "(~0x".sprintf("%x", $mask)."UL)";
     }

     return @returns;



-- 
Bryan C. Warnock
[EMAIL PROTECTED]

Reply via email to