From: Christophe R. <cr...@us...> - 2002-09-20 16:39:37
|
Update of /cvsroot/sbcl/sbcl In directory usw-pr-cvs1:/tmp/cvs-serv9005 Modified Files: BUGS version.lisp-expr Log Message: 0.7.7.33: Commit MAP/MERGE/CONCATENATE/... patch (CSR sbcl-devel 2002-09-18) ... use the type system in the 5 functions affected ... delete old hackish special-casing of (CAR TYPESPEC) ... one or two changes to early-running code (code that runs before the type system is initialized needs to evade the type system calls) ... now we behave ANSIly! (kills bugs 46a/b and 66) Index: BUGS =================================================================== RCS file: /cvsroot/sbcl/sbcl/BUGS,v retrieving revision 1.191 retrieving revision 1.192 diff -u -d -r1.191 -r1.192 --- BUGS 19 Sep 2002 17:19:13 -0000 1.191 +++ BUGS 20 Sep 2002 16:39:32 -0000 1.192 @@ -254,14 +254,6 @@ 46: type safety errors reported by Peter Van Eynde July 25, 2000: - a: (COERCE (QUOTE (A B C)) (QUOTE (VECTOR * 4))) - => #(A B C) - In general lengths of array type specifications aren't - checked by COERCE, so it fails when the spec is - (VECTOR 4), (STRING 2), (SIMPLE-BIT-VECTOR 3), or whatever. - b: CONCATENATE has the same problem of not checking the length - of specified output array types. MAKE-SEQUENCE and MAP and - MERGE also have the same problem. c: (COERCE 'AND 'FUNCTION) returns something related to (MACRO-FUNCTION 'AND), but ANSI says it should raise an error. h: (MAKE-CONCATENATED-STREAM (MAKE-STRING-OUTPUT-STREAM)) @@ -370,26 +362,6 @@ that the user, and therefore the pretty-printer thinks that the new output block should start indented 2 or more characters rightward of the correct location. - -66: - ANSI specifies that the RESULT-TYPE argument of CONCATENATE must be - a subtype of SEQUENCE, but CONCATENATE doesn't check this properly: - (CONCATENATE 'SIMPLE-ARRAY #(1 2) '(3)) => #(1 2 3) - This also leads to funny behavior when derived type specifiers - are used, as originally reported by Milan Zamazal for CMU CL (on the - Debian bugs mailing list (?) 2000-02-27), then reported by Martin - Atzmueller for SBCL (2000-10-01 on sbc...@li...): - (DEFTYPE FOO () 'SIMPLE-ARRAY) - (CONCATENATE 'FOO #(1 2) '(3)) - => #<ARRAY-TYPE SIMPLE-ARRAY> is a bad type specifier for - sequence functions. - The derived type specifier FOO should act the same way as the - built-in type SIMPLE-ARRAY here, but it doesn't. That problem - doesn't seem to exist for sequence types: - (DEFTYPE BAR () 'SIMPLE-VECTOR) - (CONCATENATE 'BAR #(1 2) '(3)) => #(1 2 3) - See also bug #46a./b., and discussion and patch sbcl-devel and - cmucl-imp 2002-07 67: As reported by Winton Davies on a CMU CL mailing list 2000-01-10, Index: version.lisp-expr =================================================================== RCS file: /cvsroot/sbcl/sbcl/version.lisp-expr,v retrieving revision 1.543 retrieving revision 1.544 diff -u -d -r1.543 -r1.544 --- version.lisp-expr 19 Sep 2002 17:26:53 -0000 1.543 +++ version.lisp-expr 20 Sep 2002 16:39:33 -0000 1.544 @@ -18,4 +18,4 @@ ;;; internal versions off the main CVS branch, it gets hairier, e.g. ;;; "0.pre7.14.flaky4.13".) -"0.7.7.32" +"0.7.7.33" |