Error w. dynamic-extent present

Bug #2031939 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 f219 (&rest args) (apply #'elt args))
(declaim (notinline f219))

(defun bug219 (c)
  (let ((v (list (vector 0 0 0 0)
                 (list (block b1 0))
                 (restart-bind nil c))))
    (declare (dynamic-extent v))
    (f219 (f219 v 0) 3)))

(bug219 1) ==> ; should be 0

The value
  ((1) . 1)
is not of type
  VECTOR
   [Condition of type TYPE-ERROR]

Restarts:
 0: [RETRY] Retry SLIME REPL evaluation request.
 1: [*ABORT] Return to SLIME's top level.
 2: [ABORT] abort thread (#<THREAD tid=31261 "repl-thread" RUNNING {10012A8003}>)

Backtrace:
  0: (SB-VM::HAIRY-REF-ERROR ((1) . 1) #<unused argument> #<unused argument>)
  1: (BUG219 1)
[...]

Revision history for this message
Charles (karlosz) wrote :

Fixed in b38992572b1f81fb092e3a9bd1a8fbd9bf5718eb (with a similar test case)

Changed in sbcl:
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.