local macro definitions and inline functions
Bug #309123 reported by
Nikodemus Siivola
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
Medium
|
Unassigned |
Bug Description
Compilation of the DEFUN QUUX causes "X is unbound" error:
(symbol-
(macrolet ((foo (y) (+ x y)))
(declaim (inline bar))
(defun bar (z)
(* z (foo 4)))))
(defun quux (z)
(bar z))
Local macro definitions surrounding inline functions are in the lexical scope for the out of line version (correct) and null environment for the inline versions (incorrect.)
See (COERCE (CDR X) 'FUNCTION) in IR1-CONVERT-
Changed in sbcl: | |
assignee: | nobody → Stas Boukarev (stassats) |
Changed in sbcl: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
Currently we get a compile-time *warnings* for X being unbound. Need to figure out if that is correct. My brain hurts.