X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=BUGS;h=68cbee7b93df6dc0b501da71d5db4f41c0c63e83;hb=4fc9d21ae1d8a6a2f8ff70f589d5da103203de13;hp=25eaf5d784c61d7ed3c0ff5c275c6294c994c4e2;hpb=68c539ab90bb39f342229e68bf9286f63824597a;p=sbcl.git diff --git a/BUGS b/BUGS index 25eaf5d..68cbee7 100644 --- a/BUGS +++ b/BUGS @@ -173,10 +173,6 @@ WORKAROUND: (Also, when this is fixed, we can enable the code in PROCLAIM which checks for incompatible FTYPE redeclarations.) -16: - The ANSI spec says that CONS can be a compound type spec, e.g. - (CONS FIXNUM REAL). SBCL doesn't support this. - 18: from DTC on the CMU CL mailing list 25 Feb 2000: ;;; Compiler fails when this file is compiled. @@ -340,6 +336,11 @@ returning an array as first value always. also report on closures, telling about the values of the bound variables. 34: + WHN test case: Compile this file: + (eval-when (:compile-toplevel :load-toplevel :execute) + (defclass a-class () (a))) + (defconstant +a-constant+ (make-instance 'a-class)) + (defconstant +another-constant+ (vector +a-constant+)) as reported by Robert Strandh on the CMU CL mailing list 12 Jun 2000: $ cat xx.lisp (defconstant +a-constant+ (make-instance 'a-class)) @@ -405,25 +406,14 @@ returning an array as first value always. accepting &REST even when it's not followed by an argument name: (DEFMETHOD FOO ((X T) &REST) NIL) -39: - On the CMU CL mailing list 26 June 2000, Douglas Crosher wrote - - Hannu Rummukainen wrote: - ... - > There's something weird going on with the compilation of the attached - > code. Compiling and loading the file in a fresh lisp, then invoking - > (test-it) gives - Thanks for the bug report, nice to have this one fixed. It was a bug - in the x86 backend, the < VOP. A fix has been committed to the main - source, see the file compiler/x86/float.lisp. - - Probably the same bug exists in SBCL. - 40: TYPEP treats the result of UPGRADED-ARRAY-ELEMENT-TYPE as gospel, so that (TYPEP (MAKE-ARRAY 3) '(VECTOR SOMETHING-NOT-DEFINED-YET)) returns (VALUES T T). Probably it should be an error instead, complaining that the type SOMETHING-NOT-DEFINED-YET is not defined. + Or perhaps UPGRADED-ARRAY-ELEMENT-TYPE should just fail when a type + isn't defined yet. (What if the definition of + SOMETHING-NOT-DEFINED-YET turns out to be SINGLE-FLOAT?) 41: TYPEP of VALUES types is sometimes implemented very inefficiently, e.g. in @@ -843,6 +833,31 @@ Error in function C::GET-LAMBDA-TO-COMPILE: :ELEMENT-TYPE, but in sbcl-0.6.9 this is not defined for WITH-OUTPUT-TO-STRING. +78: + ANSI says in one place that type declarations can be abbreviated even + when the type name is not a symbol, e.g. + (DECLAIM ((VECTOR T) *FOOVECTOR*)) + SBCL doesn't support this. But ANSI says in another place that this + isn't allowed. So it's not clear this is a bug after all. (See the + e-mail on cmucl-help@cons.org on 2001-01-16 and 2001-01-17 from WHN + and Pierre Mai.) + +79: + as pointed out by Dan Barlow on sbcl-devel 2000-07-02: + The PICK-TEMPORARY-FILE-NAME utility used by LOAD-FOREIGN uses + an easily guessable temporary filename in a way which might open + applications using LOAD-FOREIGN to hijacking by malicious users + on the same machine. Incantations for doing this safely are + floating around the net in various "how to write secure programs + despite Unix" documents, and it would be good to (1) fix this in + LOAD-FOREIGN, and (2) hunt for any other code which uses temporary + files and make it share the same new safe logic. + +80: + The subtle CMU CL bug discussed by Douglas Thomas Crosher on + cmucl-imp@cons.org 29 Jan 2001 sounds like something that probably + still exists in the corresponding SBCL code. + KNOWN BUGS RELATED TO THE IR1 INTERPRETER