X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=BUGS;h=5341a1f02e338ff48e89c6337267241992e7f508;hb=98f3f617894ce24a40764aa98606ce68c5482cf0;hp=27db05a537c9d073b08d137b5ce520bf6f763376;hpb=2cfe71c73474a0ed2b7af8b4a711d980c8bb0b25;p=sbcl.git diff --git a/BUGS b/BUGS index 27db05a..5341a1f 100644 --- a/BUGS +++ b/BUGS @@ -626,7 +626,6 @@ WORKAROUND: (note the space between the comma and the point) - 143: (reported by Jesse Bouwman 2001-10-24 through the unfortunately prominent SourceForge web/db bug tracking system, which is @@ -717,11 +716,6 @@ WORKAROUND: expansion, leaving garbage consisting of infinished blocks of the partially converted function.) -157: - Functions SUBTYPEP, TYPEP, UPGRADED-ARRAY-ELEMENT-TYPE, and - UPGRADED-COMPLEX-PART-TYPE should have an optional environment argument. - (reported by Alexey Dejneka sbcl-devel 2002-04-12) - 162: (reported by Robert E. Brown 2002-04-16) When a function is called with too few arguments, causing the @@ -1172,18 +1166,20 @@ WORKAROUND: would be to put the check between evaluation of arguments, but it could be tricky to check result types of PROG1, IF etc. -228: "function-lambda-expression problems" - in sbcl-0.7.9.6x, from the REPL: - * (progn (declaim (inline foo)) (defun foo (x) x)) - FOO - * (function-lambda-expression #'foo) - (SB-C:LAMBDA-WITH-LEXENV NIL NIL NIL (X) (BLOCK FOO X)), NIL, FOO - but this first return value is not suitable for input to FUNCTION or - COMPILE, as required by ANSI. - 229: (subtypep 'function '(function)) => nil, t. +231: "SETQ does not correctly check the type of a variable being set" + b. + (defun foo (x z) + (declare (type integer x)) + (locally (declare (type (real 1) x)) + (setq x z)) + (list x z)) + (foo 0 0) => (0 0). + + (fixed in 0.7.12.8) + 233: bugs in constraint propagation a. (defun foo (x) @@ -1253,6 +1249,30 @@ WORKAROUND: The similar problem exists for TRULY-THE. +237: "Environment arguments to type functions" + a. Functions SUBTYPEP, TYPEP, UPGRADED-ARRAY-ELEMENT-TYPE, and + UPGRADED-COMPLEX-PART-TYPE now have an optional environment + argument, but they ignore it completely. This is almost + certainly not correct. + b. Also, the compiler's optimizers for TYPEP have not been informed + about the new argument; consequently, they will not transform + calls of the form (TYPEP 1 'INTEGER NIL), even though this is + just as optimizeable as (TYPEP 1 'INTEGER). + +238: "REPL compiler overenthusiasm for CLOS code" + From the REPL, + * (defclass foo () ()) + * (defmethod bar ((x foo) (foo foo)) (call-next-method)) + causes approximately 100 lines of code deletion notes. Some + discussion on this issue happened under the title 'Three "interesting" + bugs in PCL', resulting in a fix for this oververbosity from the + compiler proper; however, the problem persists in the interactor + because the notion of original source is not preserved: for the + compiler, the original source of the above expression is (DEFMETHOD + BAR ((X FOO) (FOO FOO)) (CALL-NEXT-METHOD)), while by the time the + compiler gets its hands on the code needing compilation from the REPL, + it has been macroexpanded several times. + DEFUNCT CATEGORIES OF BUGS IR1-#: These labels were used for bugs related to the old IR1 interpreter.