SB-CLTL2:PARSE-MACRO returns a NAMED-LAMBDA form
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Once upon a time, SB-CLTL2:
This probably happened in commit a86cac2825c24fc
Anyway, in order to revert SB-CLTL2:
(See also https:/
[1] # Once...
$ ./run-sbcl.sh --no-userinit
(running SBCL from: .)
This is SBCL 1.2.11.
More information about SBCL is available at <http://
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (require :sb-cltl2)
("SB-CLTL2")
* (sb-cltl2:
(LAMBDA (#:WHOLE536 #:ENVIRONMENT537)
(DECLARE (IGNORE #:ENVIRONMENT537))
(LET* ()
(DECLARE (MUFFLE-CONDITIONS CODE-DELETION-
(LET ((#:ARGS539 (CDR #:WHOLE536)))
(UNLESS (SB-INT:
(LET* ()
(BLOCK FOO))))
# Some old version I had handy:
$ ./run-sbcl.sh --no-userinit
(running SBCL from: .)
This is SBCL 1.3.2.69-aff4a0f, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* (require "SB-CLTL2")
("SB-CLTL2")
* (sb-cltl2:
(SB-INT:
(#:EXPR #:ENV)
(DECLARE (SB-C::LAMBDA-LIST NIL))
(DECLARE (IGNORE #:ENV))
(SB-C:
NIL
(CDR #:EXPR)
(BLOCK FOO)))
NIL
[2] http://
description: | updated |
Changed in sbcl: | |
status: | Fix Committed → Fix Released |
The NAME argument is supposed to be used for something- what should it be used for if not to name the lambda? Error reporting, for which one could imagine that the implementation by which reporting that the error occurred in macro M is that M was its name.
For your second footnote you seem to be implicitly relying on http:// www.lispworks. com/documentati on/HyperSpec/ Issues/ iss156_ w.htm
which says that standardized functions can't return extra values.
PARSE-MACRO isn't in the list, so I don't think the prohibition applies.
I don't think this is a bug, on either rationale, but I've changed it back since I don't care one way or the other.
https:/ /sourceforge. net/p/sbcl/ sbcl/ci/ 2b04ef41275d2ee faa770ec0b929af 1d59e81ead/