Failed AVER with dynamic extent, mismatched THE form

Bug #1739461 reported by Paul F. Dietz
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SBCL
Fix Released
Undecided
Unassigned

Bug Description

(defun f54 ()
  (let* ((v (cons 0 (catch 'ct (the integer nil)))))
    (declare (dynamic-extent v))
    (flet ((%f (x) 1))
      (%f (cdr v)))))

==>

failed AVER:
    (EQ (SB-C::LAMBDA-TAIL-SET SB-C::USE-HOME)
        (SB-C::LAMBDA-TAIL-SET
         (SB-C::COMBINATION-LAMBDA SB-C::USE)))
[...]
  0: (SB-INT:BUG "~@<failed AVER: ~2I~_~S~:>" (EQ (SB-C::LAMBDA-TAIL-SET SB-C::USE-HOME) (SB-C::LAMBDA-TAIL-SET (SB-C::COMBINATION-LAMBDA SB-C::USE))))
  1: (SB-IMPL::%FAILED-AVER (EQ (SB-C::LAMBDA-TAIL-SET SB-C::USE-HOME) (SB-C::LAMBDA-TAIL-SET (SB-C::COMBINATION-LAMBDA SB-C::USE))))
  2: ((FLET SB-C::DO-1-USE :IN SB-C::FIND-RESULT-TYPE) #<SB-C::COMBINATION :FUN #<SB-C::REF :LEAF #<SB-C::CLAMBDA :%SOURCE-NAME %F :%DEBUG-NAME # :KIND NIL :TYPE #<SB-KERNEL:BUILT-IN-CLASSOID FUNCTION (re..
  3: (SB-C::FIND-RESULT-TYPE #<SB-C::CRETURN :LAMBDA #<SB-C::CLAMBDA :%SOURCE-NAME F54 [...]

Stas Boukarev (stassats)
Changed in sbcl:
assignee: nobody → Stas Boukarev (stassats)
Revision history for this message
Stas Boukarev (stassats) wrote :

In 2abd80cb5a227dc756b815daa38a071b3b67f26c

Changed in sbcl:
assignee: Stas Boukarev (stassats) → nobody
status: New → 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.