Slighly more safety to %MAKE-ARRAY in full call situations.
commit5db52db362e0065cfa13ba8eb1a57da1276cfafd
authorDouglas Katzman <dougk@google.com>
Sat, 8 Nov 2014 19:31:30 +0000 (8 14:31 -0500)
committerDouglas Katzman <dougk@google.com>
Sat, 8 Nov 2014 19:48:19 +0000 (8 14:48 -0500)
tree4a4497dc263fdf09e441d89e12857299b748ac75
parent80c4401cf00909700fa942cf8bd34de500cbc73b
Slighly more safety to %MAKE-ARRAY in full call situations.

Most argument errors are caught before attempting memory allocation
e.g. in (MAKE-ARRAY `(1 -2 -3) which has an otherwise valid value
of (reduce #'* dimensions). Mis-shapen :initial-contents are detected
late, but this seems less important.
And incidentally, a full call to (MAKE-ARRAY 1) is 33% less consy.
src/code/array.lisp
src/compiler/array-tran.lisp
tests/array.pure.lisp