failed AVER: (EQ (BASIC-COMBINATION-KIND NODE) LOCAL)

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

Bug Description

(defparameter *f5*
  '(lambda (a b c)
    (declare (notinline max))
    (declare (optimize (speed 1) (space 0) (safety 0) (debug 3) (compilation-speed 0)))
    (labels ((%f3 (f3-1) 0))
      (tagbody
  (logior (max (go 0) (complex (progv '(*s2*) (list b) *s2*) 0))
   (multiple-value-call #'%f3
     (values (%f3 (catch 'ct5 (%f3 (go 0)))))))
       0))))

* (compile nil *f5*)

debugger invoked on a SB-INT:BUG in thread
#<THREAD "main thread" RUNNING {1003016813}>:
    failed AVER: (EQ (BASIC-COMBINATION-KIND NODE) LOCAL)
  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:EXIT) 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~:>" (EQ (SB-C::BASIC-COMBINATION-KIND SB-C::NODE) :LOCAL))
0] 0

Found by random testing on sbcl 1.2.5.

Revision history for this message
Paul F. Dietz (paul-f-dietz) wrote :

Also, in that test, *s2* is declared special.

Revision history for this message
Stas Boukarev (stassats) wrote :

Reduced to
(tagbody
   (go 0)
   (list (progv () ()))
   (multiple-value-call #'list
     (values (catch 'ct5 (go 0))))
 0)

And one of the variants produced a different error,
(labels ((a (x)))
  (go (+))
  (a (catch 'ct5 0)))
failed AVER:
    (AND (EQ (CTRAN-KIND START) INSIDE-BLOCK)
         (NOT (BLOCK-DELETE-P BLOCK)))

and this one needs to be compile-filed.

Changed in sbcl:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Stas Boukarev (stassats) wrote :

In 049d6d8082328a515bf866515a0c54717db3ecff

Changed in sbcl:
status: Triaged → Fix Committed
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.