also unstable in several ways, including its inability
to really grok function declarations.
+ As of sbcl-0.7.5, sbcl's cross-compiler does run with
+ *TYPE-SYSTEM-INITIALIZED*; however, this bug remains.
+
7:
The "compiling top-level form:" output ought to be condensed.
Perhaps any number of such consecutive lines ought to turn into a
48:
SYMBOL-MACROLET bugs reported by Peter Van Eynde July 25, 2000:
- a: (SYMBOL-MACROLET ((T TRUE)) ..) should probably signal
- PROGRAM-ERROR, but SBCL accepts it instead.
- b: SYMBOL-MACROLET should refuse to bind something which is
- declared as a global variable, signalling PROGRAM-ERROR.
c: SYMBOL-MACROLET should signal PROGRAM-ERROR if something
it binds is declared SPECIAL inside.
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,
(I haven't tried to investigate this bug enough to guess whether
there might be any user-level symptoms.)
-90:
- a latent cross-compilation/bootstrapping bug: The cross-compilation
- host's CL:CHAR-CODE-LIMIT is used in target code in readtable.lisp
- and possibly elsewhere. Instead, we should use the target system's
- CHAR-CODE-LIMIT. This will probably cause problems if we try to
- bootstrap on a system which uses a different value of CHAR-CODE-LIMIT
- than SBCL does.
-
94a:
Inconsistencies between derived and declared VALUES return types for
DEFUN aren't checked very well. E.g. the logic which successfully
GC, so that thereafter memory usage can never be reduced below that
level.
-96:
- The TRACE facility can't be used on some kinds of functions.
- (Basically, the breakpoint facility was incompletely implemented
- in the X86 port of CMU CL, and hasn't been fixed in SBCL.)
-
98:
In sbcl-0.6.11.41 (and in all earlier SBCL, and in CMU
CL), out-of-line structure slot setters are horribly inefficient
the first time around, until regression tests are written I'm not
comfortable merging the patches in the CVS version of SBCL.
-102:
- As reported by Arthur Lemmens sbcl-devel 2001-05-05, ANSI
- requires that SYMBOL-MACROLET refuse to rebind special variables,
- but SBCL doesn't do this. (Also as reported by AL in the same
- message, SBCL depended on this nonconforming behavior to build
- itself, because of the way that **CURRENT-SEGMENT** was implemented.
- As of sbcl-0.7.3.x, this dependence on the nonconforming behavior
- has been fixed, but the nonconforming behavior remains.)
-
104:
(DESCRIBE 'SB-ALIEN:DEF-ALIEN-TYPE) reports the macro argument list
incorrectly:
It should be possible to be much more specific (overflow, division
by zero, etc.) and of course the "How can this be?" should be fixable.
+ See also bugs #45.c and #183
+
148:
In sbcl-0.7.1.3 on x86, COMPILE-FILE on the file
(in-package :cl-user)
Is (1 . 1) of type CONS a cons? => NIL
without signalling an error.
-154:
- There's some sort of problem with aborting back out of the debugger
- after a %DETECT-STACK-EXHAUSTION error in sbcl-0.7.1.38. In some cases
- telling the debugger to ABORT doesn't get you back to the main REPL,
- but instead just gives you another stack exhaustion error. The problem
- doesn't occur in the trivial case
- * (defun frob () (frob) (frob))
- FROB
- * (frob)
- but it has happened in more complicated cases (which I haven't
- figured out how to reproduce).
-
157:
Functions SUBTYPEP, TYPEP, UPGRADED-ARRAY-ELEMENT-TYPE, and
UPGRADED-COMPLEX-PART-TYPE should have an optional environment argument.
the compiler handle the error, convert it into a COMPILER-ERROR, and
continue compiling) which seems wrong.
-182: "SPARC/Linux floating point"
- Evaluating (/ 1.0 0.0) at the prompt causes a Bus error and complete
- death of the environment. Other floating point operations sometimes
- return infinities when they should raise traps (e.g. the test case
- for bug #146, (expt 2.0 12777)).
-
183: "IEEE floating point issues"
Even where floating point handling is being dealt with relatively
well (as of sbcl-0.7.5, on sparc/sunos and alpha; see bug #146), the
:ACCRUED-EXCEPTIONS (:INEXACT)
:FAST-MODE NIL)
-184: "division by zero becomes frozen into RATIO"
- (reported by Wolfhard Buss on cmucl-imp 18 Jun 2002, fails on
- sbcl-0.7.4.39 too)
- * (/ 1 (/ 3 2) 0)
- 1/0
-
185: "top-level forms at the REPL"
* (locally (defstruct foo (a 0 :type fixnum)))
gives an error:
;; go away.)
(sb-c::%dvai v i))
+188: "compiler performance fiasco involving type inference and UNION-TYPE"
+ (In sbcl-0.7.6.10, DEFTRANSFORM CONCATENATE was commented out until this
+ bug could be fixed properly, so you won't see the bug unless you restore
+ the DEFTRANSFORM by hand.) In sbcl-0.7.5.11 on a 700 MHz Pentium III,
+ (time (compile
+ nil
+ '(lambda ()
+ (declare (optimize (safety 3)))
+ (declare (optimize (compilation-speed 2)))
+ (declare (optimize (speed 1) (debug 1) (space 1)))
+ (let ((fn "if-this-file-exists-the-universe-is-strange"))
+ (load fn :if-does-not-exist nil)
+ (load (concatenate 'string fn ".lisp") :if-does-not-exist nil)
+ (load (concatenate 'string fn ".fasl") :if-does-not-exist nil)
+ (load (concatenate 'string fn ".misc-garbage")
+ :if-does-not-exist nil)))))
+ reports
+ 134.552 seconds of real time
+ 133.35156 seconds of user run time
+ 0.03125 seconds of system run time
+ [Run times include 2.787 seconds GC run time.]
+ 0 page faults and
+ 246883368 bytes consed.
+ BACKTRACE from Ctrl-C in the compilation shows that the compiler is
+ thinking about type relationships involving types like
+ #<UNION-TYPE
+ (OR (INTEGER 576 576)
+ (INTEGER 1192 1192)
+ (INTEGER 2536 2536)
+ (INTEGER 1816 1816)
+ (INTEGER 2752 2752)
+ (INTEGER 1600 1600)
+ (INTEGER 2640 2640)
+ (INTEGER 1808 1808)
+ (INTEGER 1296 1296)
+ ...)>)[:EXTERNAL]
+
+190: "PPC/Linux pipe? buffer? bug"
+ In sbcl-0.7.6, the run-program.test.sh test script sometimes hangs
+ on the PPC/Linux platform, waiting for a zombie env process. This
+ is a classic symptom of buffer filling and deadlock, but it seems
+ only sporadically reproducible.
+
+191: "Miscellaneous PCL deficiencies"
+ (reported by Alexey Dejenka sbcl-devel 2002-08-04)
+ a. DEFCLASS does not inform the compiler about generated
+ functions. Compiling a file with
+ (DEFCLASS A-CLASS ()
+ ((A-CLASS-X)))
+ (DEFUN A-CLASS-X (A)
+ (WITH-SLOTS (A-CLASS-X) A
+ A-CLASS-X))
+ results in a STYLE-WARNING:
+ undefined-function
+ SB-SLOT-ACCESSOR-NAME::|COMMON-LISP-USER A-CLASS-X slot READER|
+ b. DEFGENERIC does not check lambda list syntax; from the REPL:
+ * (defgeneric gf ("a" #p"b"))
+
+ #<STANDARD-GENERIC-FUNCTION GF (0)>
+ *
+ c. the examples in CLHS 7.6.5.1 (regarding generic function lambda
+ lists and &KEY arguments) do not signal errors when they should.
+
+
DEFUNCT CATEGORIES OF BUGS
IR1-#:
These labels were used for bugs related to the old IR1 interpreter.