Comment 2 for bug 913232

Revision history for this message
Lutz Euler (lutz-euler) wrote :

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 <http://www.sbcl.org/>.

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 <http://sbcl.sourceforge.net/>.

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 "~@<failed AVER: ~2I~_~A~:>")[:EXTERNAL]
0] backtrace

0: (SB-INT:BUG "~@<failed AVER: ~2I~_~A~:>")[:EXTERNAL]
1: (SB-IMPL::%FAILED-AVER (SB-C::INTEGER-TYPE-P TYPE))
2: (SB-C::WEAKEN-INTEGER-TYPE #<SB-KERNEL:INTERSECTION-TYPE (AND FIXNUM A)>)
3: (SB-C::WEAKEN-TYPE #<SB-KERNEL:INTERSECTION-TYPE (AND FIXNUM A)>)
4: (SB-C::MAKE-CAST
    #<SB-C::LVAR 1 {10026BAA51}>
    #<SB-KERNEL:INTERSECTION-TYPE (AND FIXNUM A)>
    ((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
    #<SB-C::COMBINATION
      :FUN #<SB-C::REF :LEAF # {10026BA911}>
      :ARGS (NIL) {10026BA991}>
    #<CLOSURE (FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE) {10026BAEB9}>)
7: (SB-C::ASSERT-LVAR-TYPE
    #<SB-C::LVAR 1 {10026BAA51}>
    #<SB-KERNEL:INTERSECTION-TYPE (AND FIXNUM A)>
    ((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
    #<SB-C::COMBINATION
      :FUN #<SB-C::REF :LEAF # {10026BA911}>
      :ARGS (NIL) {10026BA991}>
    #<SB-C::CLAMBDA
      :%SOURCE-NAME F
      :%DEBUG-NAME NIL
      :KIND NIL
      :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
      :WHERE-FROM :DEFINED
      :VARS (X) {10026B62B1}>)
9: (SB-C::CONVERT-CALL
    #<SB-C::REF
      :LEAF #<SB-C::CLAMBDA
              :%SOURCE-NAME F
              :%DEBUG-NAME NIL
              :KIND NIL
              :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
              :WHERE-FROM :DEFINED
              :VARS (X) {10026B62B1}> {10026BA911}>
    #<SB-C::COMBINATION
      :FUN #<SB-C::REF :LEAF # {10026BA911}>
      :ARGS (NIL) {10026BA991}>
    #<SB-C::CLAMBDA
      :%SOURCE-NAME F
      :%DEBUG-NAME NIL
      :KIND NIL
      :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
      :WHERE-FROM :DEFINED
      :VARS (X) {10026B62B1}>)
10: (SB-C::CONVERT-CALL-IF-POSSIBLE
     #<SB-C::REF
       :LEAF #<SB-C::CLAMBDA
               :%SOURCE-NAME F
               :%DEBUG-NAME NIL
               :KIND NIL
               :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
               :WHERE-FROM :DEFINED
               :VARS (X) {10026B62B1}> {10026BA911}>
     #<SB-C::COMBINATION
       :FUN #<SB-C::REF :LEAF # {10026BA911}>
       :ARGS (NIL) {10026BA991}>)
11: (SB-C::LOCALL-ANALYZE-FUN-1
     #<SB-C::CLAMBDA
       :%SOURCE-NAME F
       :%DEBUG-NAME NIL
       :KIND NIL
       :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
       :WHERE-FROM :DEFINED
       :VARS (X) {10026B62B1}>)
12: ((FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE))
13: (SB-C::%WITH-IR1-ENVIRONMENT-FROM-NODE
     #<SB-C:BIND
       :LAMBDA #<SB-C::CLAMBDA
                 :%SOURCE-NAME F
                 :%DEBUG-NAME NIL
                 :KIND NIL
                 :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
                 :WHERE-FROM :DEFINED
                 :VARS (X) {10026B62B1}>>
     #<CLOSURE (FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE) {10026B93A9}>)
14: (SB-C::REFERENCE-ENTRY-POINT
     #<SB-C::REF
       :LEAF #<SB-C::CLAMBDA
               :%SOURCE-NAME F
               :%DEBUG-NAME NIL
               :KIND NIL
               :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
               :WHERE-FROM :DEFINED
               :VARS (X) {10026B62B1}> {10026B7491}>)
15: (SB-C::LOCALL-ANALYZE-FUN-1
     #<SB-C::CLAMBDA
       :%SOURCE-NAME F
       :%DEBUG-NAME NIL
       :KIND NIL
       :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
       :WHERE-FROM :DEFINED
       :VARS (X) {10026B62B1}>)
16: (SB-C::LOCALL-ANALYZE-COMPONENT
     #<SB-C:COMPONENT
       :NAME (SB-C::INITIAL-COMPONENT (LAMBDA ()))
       :REANALYZE T {10026AF391}>)
17: (SB-C::LOCALL-ANALYZE-CLAMBDAS-UNTIL-DONE
     (#<SB-C::CLAMBDA
        :%SOURCE-NAME SB-C::.ANONYMOUS.
        :%DEBUG-NAME (SB-C::TL-XEP (LAMBDA #))
        :KIND :EXTERNAL
        :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)>
        :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))))
     #<SB-C::CORE-OBJECT >)[:EXTERNAL]
19: ((LAMBDA ()))
20: ((FLET SB-THREAD::WITH-RECURSIVE-LOCK-THUNK))
21: (SB-C::%WITH-COMPILATION-UNIT #<CLOSURE (LAMBDA #) {10026ADA49}>)[: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))))
     #<NULL-LEXENV>)
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))))
     #<NULL-LEXENV>)
24: (SB-IMPL::%SIMPLE-EVAL
     (SB-INT:NAMED-LAMBDA F (X)
                          (DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X))
                          (BLOCK F X))
     #<NULL-LEXENV>)
25: (SB-INT:SIMPLE-EVAL-IN-LEXENV
     (SB-INT:NAMED-LAMBDA F (X)
                          (DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X))
                          (BLOCK F X))
     #<NULL-LEXENV>)
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))
     #<NULL-LEXENV>)
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)))
     #<NULL-LEXENV>)
28: (SB-INT:SIMPLE-EVAL-IN-LEXENV
     (DEFUN F (X) (DECLARE (OPTIMIZE SPEED) (TYPE (AND FIXNUM A) X)) X)
     #<NULL-LEXENV>)
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 #<CLOSURE (LAMBDA #) {10026A85E9}>)
33: (SB-IMPL::TOPLEVEL-REPL NIL)
34: (SB-IMPL::TOPLEVEL-INIT)
35: ((LABELS SB-IMPL::RESTART-LISP))