form fails to compile with coverage collecting enables

Bug #767959 reported by Attila Lendvai
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SBCL
Fix Released
Medium
Unassigned

Bug Description

this is the minimum i could reduce it to:

(declaim (optimize sb-cover:store-coverage-data))

(defun foo ()
  (assoc
   nil
   '((:ordinary . ordinary-lambda-list))))

and this will produce the backtrace below when compiled (with 1.0.47.24):

The value ORDINARY-LAMBDA-LIST is not of type LIST.
   [Condition of type TYPE-ERROR]

Restarts:
 2: ABORT Abort compilation.
 1: *ABORT Return to SLIME's top level.
 0: TERMINATE-THREAD Terminate this thread (#<THREAD "worker" RUNNING {1006CE9201}>)

Backtrace:
  0: ((LABELS SB-C::SUB) (:ORDINARY . ORDINARY-LAMBDA-LIST))
  1: ((LABELS SB-C::SUB) '(:ORDINARY . ORDINARY-LAMBDA-LIST))
  2: ((LABELS SB-C::SUB) (SB-C::THIS '(:ORDINARY . ORDINARY-LAMBDA-LIST)))
  3: ((LABELS SB-C::SUB) ((SB-C::THIS '(:ORDINARY . ORDINARY-LAMBDA-LIST))))
  4: ((LABELS SB-C::SUB) ..)
  5: (SB-C::BEST-SUB-SOURCE-PATH ..) [:EXTERNAL]
  6: (SB-C::IR1-CONVERT-IF ..)
  7: (SB-C::IR1-CONVERT ..)
  8: (SB-C::IR1-CONVERT-PROGN-BODY ..)
  9: (SB-C::%PROCESSING-DECLS NIL NIL NIL #<SB-C::CTRAN 2 {1006D21951}> #<SB-C::LVAR 3 {1006D21981}> NIL #<CLOSURE (LAMBDA #) {1006D21D79}>)
 10: (SB-C::IR1-CONVERT-LET ..)
 11: (SB-C::IR1-CONVERT ..)
 12: (SB-C::IR1-CONVERT-PROGN-BODY ..)
 13: (SB-C::IR1-CONVERT-AUX-BINDINGS ..)
 14: (SB-C::IR1-CONVERT-SPECIAL-BINDINGS ..)
 15: (SB-C::IR1-CONVERT-LAMBDA-BODY ..)
 16: (SB-C::IR1-CONVERT-AUX-BINDINGS ..)
 17: (SB-C::IR1-CONVERT-SPECIAL-BINDINGS ..)
 18: (SB-C::IR1-CONVERT-LAMBDA-BODY ..)
 19: (SB-C::IR1-CONVERT-AUX-BINDINGS ..)
 20: (SB-C::IR1-CONVERT-SPECIAL-BINDINGS ..)
 21: (SB-C::IR1-CONVERT-LAMBDA-BODY ..)
 22: (SB-C::IR1-CONVERT-AUX-BINDINGS ..)
 23: (SB-C::IR1-CONVERT-SPECIAL-BINDINGS ..)
 24: (SB-C::IR1-CONVERT-LAMBDA-BODY ..)
 25: (SB-C::IR1-CONVERT-MORE ..)
 26: (SB-C::IR1-CONVERT-HAIRY-LAMBDA ..)
 27: (SB-C::IR1-CONVERT-LAMBDA ..)
 28: (SB-C::IR1-CONVERT-INLINE-LAMBDA ..)
 29: ((FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE))
 30: (SB-C::%WITH-IR1-ENVIRONMENT-FROM-NODE #<SB-C::COMBINATION :FUN # :ARGS (# #) {1006D11E81}> #<CLOSURE (FLET SB-C::CLOSURE-NEEDING-IR1-ENVIRONMENT-FROM-NODE) {1006D16A79}>)
 31: (SB-C::TRANSFORM-CALL ..)
 32: (SB-C::IR1-TRANSFORM #<SB-C::COMBINATION :FUN # :ARGS (# #) {1006D11E81}> #<SB-C::TRANSFORM :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (read-only)> :NOTE "optimize" :IMPORTANT NIL>)
 33: (SB-C::IR1-OPTIMIZE-COMBINATION #<SB-C::COMBINATION :FUN # :ARGS (# #) {1006D11E81}>)
 34: (SB-C::IR1-OPTIMIZE-BLOCK #<SB-C::CBLOCK 3 :START c13 {1006D10F11}>)
 35: (SB-C::IR1-OPTIMIZE #<SB-C:COMPONENT :NAME FOO {1006D15B21}> NIL)
 36: (SB-C::IR1-OPTIMIZE-UNTIL-DONE #<SB-C:COMPONENT :NAME FOO {1006D15B21}>)
 37: (SB-C::IR1-PHASES #<SB-C:COMPONENT :NAME FOO {1006D15B21}>)
 38: (SB-C::COMPILE-COMPONENT #<SB-C:COMPONENT :NAME FOO {1006D15B21}>)
 39: (SB-C::%COMPILE ..)
 40: (SB-C::FOPCOMPILE-FUNCTION ..)
 41: (SB-C::FOPCOMPILE ..)
 42: (SB-C::CONVERT-AND-MAYBE-COMPILE ..)
 43: ((FLET SB-C::DEFAULT-PROCESSOR) ..)
 44: (SB-C::PROCESS-TOPLEVEL-FORM ..)
 45: (SB-C::PROCESS-TOPLEVEL-PROGN ..)
 46: (SB-C::PROCESS-TOPLEVEL-FORM ..)
 47: (SB-C::PROCESS-TOPLEVEL-PROGN ..)
 48: (SB-C::PROCESS-TOPLEVEL-FORM ..)
 49: ((FLET SB-C::DEFAULT-PROCESSOR) (DEFUN FOO () (ASSOC NIL '(#))))
 50: (SB-C::PROCESS-TOPLEVEL-FORM (DEFUN FOO () (ASSOC NIL '(#))) (SB-C::ORIGINAL-SOURCE-START 0 0) NIL)
 51: (SB-C::SUB-SUB-COMPILE-FILE #<SB-C::SOURCE-INFO >)
 52: ((LAMBDA ()))
 53: ((FLET SB-C::WITH-IT))
 54: (SB-C::SUB-COMPILE-FILE #<SB-C::SOURCE-INFO >)
 55: (COMPILE-FILE "/tmp/fileCa1Zti" :OUTPUT-FILE NIL :VERBOSE NIL :PRINT NIL :EXTERNAL-FORMAT :DEFAULT :TRACE-FILE NIL :BLOCK-COMPILE NIL :EMIT-CFASL NIL)

tags: added: compiler compiler-ir1
Changed in sbcl:
assignee: nobody → Nikodemus Siivola (nikodemus)
status: New → In Progress
Revision history for this message
Nikodemus Siivola (nikodemus) wrote :

In 1.0.47.26.

Changed in sbcl:
assignee: Nikodemus Siivola (nikodemus) → nobody
importance: Undecided → Medium
status: In Progress → Fix Committed
Stas Boukarev (stassats)
Changed in sbcl:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.