On Wed, Sep 26, 2001 at 12:50:27PM +0400, Alexey Dejneka wrote:
> FIX : change the value of DEFAULT-INIT-CHAR to #\Null (in
> src/code/early-extensions.lisp) or replace `#.default-init-char' to
> `#\Null' in `(defparameter *array-info* ...)' in
> Explanation : (see src/compiler/array-tran.lisp, (deftransform
> make-array)) to make a simple vector inlined version of MAKE-ARRAY
> calls ALLOCATE-VECTOR, which automagically fills the memory with some
> default value (0s). If this value can not be read as INITIAL-ELEMENT
> (expected values with various types are in *ARRAY-INFO*), MAKE-ARRAY
> additionaly calls FILL. In the considered case ALLOCATE-VECTOR gives
> an array of #\NULL-s, but MAKE-ARRAY thinks, that it is filled with
> #\Space-s and does not call FILL.
> 0.pre7.37 does not seem to optimize calls to MAKE-ARRAY, therefore, it
> does full initialization.
The original CMU CL code used #\NULL as the initial value for strings.
I prefer to use #\SPACE as the high level default initial element for
strings, since it seems surprising for the default of an ANSI
operation MAKE-STRING not to be an ANSI BASE-CHAR, and in converting
from #\NULL to #\SPACE I introduced the bug when I misunderstood some
of the behavior that you explained.
I experimented with a little while waiting for compilation on some
simple tests of something else, and I think I understand how to fix it
and still keep the #\SPACE default, but it looks like a bit more than
a one-line change, so I think I'll wait until I get back from of this
already-gone-on-far-too-long flaky5_branch thing.
William Harold Newman <william.newman@...>
pending patches from sbcl-devel:
Ingvar Mattson any-8-bit-character-set patch 2001-09-05 (web link)
MNA patch for fd-stream.lisp 2001-09-10
Alexey Dejneka "Bug in EXPAND-DEFGENERIC" patch 2001-09-10
Alexey Dejneka "strange behavior of DIRECTORY" bug report 2001-09-21,
Swap FunctionPointer and InstancePointer type codes for PPC
convenience (dan 2001-09-22).
bug 126 fix Alexey Dejneka 2001-09-26 (now /usr/stuff/bug126.diff)
already in flaky5_branch code:
MNA 'reworked defclass patch' 2001-09-05
pending easy-to-fix bugs:
(NBUTLAST NIL 0), reported anonymously in SourceForge bugs system
PGP key fingerprint 85 CE 1C BA 79 8D 51 8C B9 25 FB EE E0 C3 E5 7C