#201: &WHOLE broken in DEFINE-METHOD-COMBINATION -----------------------------------------------------------------------------------------------+ Reporter: https://www.google.com/accounts/o8/id?id=aitoawlfp20ohzeq8vs4btepsaqltprtaim... | Owner: somebody Type: defect | Status: closed Priority: minor | Milestone: 1.1.0 Component: CLOS | Version: 1.1.0-dev Resolution: invalid | Keywords: ansi-conformance -----------------------------------------------------------------------------------------------+ Changes (by ehuelsmann):
* status: new => closed * resolution: => invalid
Comment:
Well, of course the error can be improved, but the code provided is in error. The backquote form should have read:
`(progn (format nil "using ~a" ',whole))
Note the quote before the unquote. The difference being that the new code evaluates to
(progn (format nil "using ~a" '(4))
which takes (4) as a constant while the old code does to
(progn (format nil "using ~a" (4))
Which tries to evaluate a function by the name 4.
Resolving as invalid. Although I appreciate the fact that the error could be better, I don't see how at this time. (The problem being that LispObject.car() raises a type error "This is not a LIST", while the outer code knows which error *should* have been generated, but has no way to communicate that to inner code without presumed-large performance impact.