From: Peter G. <pe...@ar...> - 2007-03-01 20:50:03
|
In order to get ABCL to build SBCL 1.0.2.12 (and later), I've changed MAKE-ARRAY and ADJUST-ARRAY to initialize arrays of element type T with the fixnum zero rather than NIL by default. SBCL and OpenMCL do this, and changes made in SBCL 1.0.2.12 rely (inadvertently, I suspect) on simple-vectors being created with their elements initialized to zero even though :INITIAL-ELEMENT 0 is not specified. This is not exactly what ANSI had in mind (1), and I've sent a 1-line patch to the SBCL folks to make it easier for non-SBCL build hosts to build SBCL, but it would be nice if ABCL 0.0.10 could build the latest released SBCL (1.0.3) out of the box, so I've changed ABCL's MAKE-ARRAY to work like SBCL's in this respect. With that change, ABCL from current CVS builds SBCL from current CVS without any problems, at least on Linux/x86-64; Windows is a different sad story (2). I've also checked ansi-tests, cl-ppcre-tests, and salza, and everything seems OK, but if you notice any oddities related to the change in array initialization, please let me know. Thanks for your support. -Peter (1) "If INITIAL-ELEMENT is not supplied, the consequences of later reading an uninitialized element of new-array are undefined unless either INITIAL-CONTENTS is supplied or DISPLACED-TO is non-NIL." (2) For some unknown reason, Java 1.5.0_11 overflows its stack at a depth of around 2000 on Vista (I don't think this is a Vista-specific issue); the limit on Linux/x86-64 is around 30000. ABCL dies on Vista trying to compile the KOI8-R->CODE-MAPPER, bless its heart. |
From: Peter G. <pe...@ar...> - 2007-03-06 12:08:15
|
On Thu, 1 Mar 2007 at 12:49:53 -0800, Peter Graves wrote: > (2) For some unknown reason, Java 1.5.0_11 overflows its stack at a > depth of around 2000 on Vista (I don't think this is a Vista-specific > issue); the limit on Linux/x86-64 is around 30000. ABCL dies on Vista > trying to compile the KOI8-R->CODE-MAPPER, bless its heart. It's possible to build SBCL with ABCL on Vista (and probably on Windows generally) by specifying -Xmx256M and -Xss4M when invoking Java. For example: "C:\Program Files\Java\jdk1.5.0_11\bin\java.exe" -Xss4M -Xmx256M -cp "C:\cygwin\home\peter\j\src" org.armedbear.lisp.Main -Peter |