Output and backtrace from the oldest broken version.
(The backtrace still looks much the same on current
git head, 1.0.54.108.)
This is SBCL 1.0.28.48, an implementation of ANSI Common Lisp.
More information about SBCL is available at .
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (defun f (x)
(declare (optimize speed)
(type (and fixnum a) x))
x)
debugger invoked on a SB-INT:BUG:
failed AVER: (INTEGER-TYPE-P TYPE)
This is probably a bug in SBCL itself. (Alternatively, SBCL might have been
corrupted by bad user code, e.g. by an undefined Lisp operation like
(FMAKUNBOUND 'COMPILE), or by stray pointers from alien code or from unsafe
Lisp code; or there might be a bug in the OS or hardware that SBCL is running
on.) If it seems to be a bug in SBCL itself, the maintainers would like to
know about it. Bug reports are welcome on the SBCL mailing lists, which you
can find at .
Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [ABORT] Exit debugger, returning to top level.
(SB-INT:BUG "~@")[:EXTERNAL]
0] backtrace
0: (SB-INT:BUG "~@")[:EXTERNAL]
1: (SB-IMPL::%FAILED-AVER (SB-C::INTEGER-TYPE-P TYPE))
2: (SB-C::WEAKEN-INTEGER-TYPE #)
3: (SB-C::WEAKEN-TYPE #)
4: (SB-C::MAKE-CAST
#
#
((COMPILATION-SPEED . 1) (DEBUG . 1) (INHIBIT-WARNINGS . 1)
(SB-C::MERGE-TAIL-CALLS . 3) (SAFETY . 1) (SPACE . 1) (SPEED . 3)))
5: ((FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE))
6: (SB-C::%WITH-IR1-ENVIRONMENT-FROM-NODE
#
:ARGS (NIL) {10026BA991}>
#)
7: (SB-C::ASSERT-LVAR-TYPE
#
#
((COMPILATION-SPEED . 1) (DEBUG . 1) (INHIBIT-WARNINGS . 1)
(SB-C::MERGE-TAIL-CALLS . 3) (SAFETY . 1) (SPACE . 1) (SPEED . 3)))
8: (SB-C::PROPAGATE-TO-ARGS
#
:ARGS (NIL) {10026BA991}>
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}>)
9: (SB-C::CONVERT-CALL
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}> {10026BA911}>
#
:ARGS (NIL) {10026BA991}>
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}>)
10: (SB-C::CONVERT-CALL-IF-POSSIBLE
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}> {10026BA911}>
#
:ARGS (NIL) {10026BA991}>)
11: (SB-C::LOCALL-ANALYZE-FUN-1
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}>)
12: ((FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE))
13: (SB-C::%WITH-IR1-ENVIRONMENT-FROM-NODE
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}>>
#)
14: (SB-C::REFERENCE-ENTRY-POINT
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}> {10026B7491}>)
15: (SB-C::LOCALL-ANALYZE-FUN-1
#
:WHERE-FROM :DEFINED
:VARS (X) {10026B62B1}>)
16: (SB-C::LOCALL-ANALYZE-COMPONENT
#)
17: (SB-C::LOCALL-ANALYZE-CLAMBDAS-UNTIL-DONE
(#
:WHERE-FROM :DEFINED
:VARS (#:G0) {10026B79E1}>))
18: (SB-C::%COMPILE
(LAMBDA ()
(DECLARE (MUFFLE-CONDITIONS COMPILER-NOTE))
(PROGN
(SB-INT:NAMED-LAMBDA F (X) (DECLARE (OPTIMIZE SPEED) (TYPE # X))
(BLOCK F X))))
#)[:EXTERNAL]
19: ((LAMBDA ()))
20: ((FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK))
21: (SB-C::%WITH-COMPILATION-UNIT #)[:EXTERNAL]
22: (SB-C::ACTUALLY-COMPILE
NIL
(LAMBDA ()
(DECLARE (MUFFLE-CONDITIONS COMPILER-NOTE))
(PROGN
(SB-INT:NAMED-LAMBDA F (X) (DECLARE (OPTIMIZE SPEED) (TYPE # X))
(BLOCK F X))))
#)
23: (SB-C:COMPILE-IN-LEXENV
NIL
(LAMBDA ()
(DECLARE (MUFFLE-CONDITIONS COMPILER-NOTE))
(PROGN
(SB-INT:NAMED-LAMBDA F (X) (DECLARE (OPTIMIZE SPEED) (TYPE # X))
(BLOCK F X))))
#)
24: (SB-IMPL::%SIMPLE-EVAL
(SB-INT:NAMED-LAMBDA F (X)
(DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X))
(BLOCK F X))
#)
25: (SB-INT:SIMPLE-EVAL-IN-LEXENV
(SB-INT:NAMED-LAMBDA F (X)
(DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X))
(BLOCK F X))
#)
26: (SB-INT:SIMPLE-EVAL-IN-LEXENV
(SB-IMPL::%DEFUN 'F
(SB-INT:NAMED-LAMBDA F (X)
(DECLARE (OPTIMIZE SPEED)
(TYPE (AND FIXNUM A) X))
(BLOCK F X))
NIL 'NIL (SB-C:SOURCE-LOCATION))
#)
27: (SB-INT:SIMPLE-EVAL-IN-LEXENV
(EVAL-WHEN (:LOAD-TOPLEVEL :EXECUTE)
(SB-IMPL::%DEFUN 'F
(SB-INT:NAMED-LAMBDA F (X)
(DECLARE (OPTIMIZE SPEED)
(TYPE # X))
(BLOCK F X))
NIL 'NIL (SB-C:SOURCE-LOCATION)))
#)
28: (SB-INT:SIMPLE-EVAL-IN-LEXENV
(DEFUN F (X) (DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X)) X)
#)
29: (INTERACTIVE-EVAL
(DEFUN F (X) (DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X)) X))[:EXTERNAL]
30: (SB-IMPL::REPL-FUN NIL)
31: ((LAMBDA ()))
32: (SB-IMPL::%WITH-REBOUND-IO-SYNTAX #)
33: (SB-IMPL::TOPLEVEL-REPL NIL)
34: (SB-IMPL::TOPLEVEL-INIT)
35: ((LABELS SB-IMPL::RESTART-LISP))