#241: &rest and &aux can't coexist anymore in lambda lists -----------------------+---------------------------------------------------- Reporter: sboukarev | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: 1.1.0 Component: compiler | Version: Keywords: | -----------------------+---------------------------------------------------- (compile nil '(lambda (&rest foo &aux x))) => The value FOO is not of type LIST.
And some illegal combinations are accepted:
(compile nil '(lambda (&aux x &rest))) Treats &rest as a variable. Which is correct in theory, but highly unlikely to be used on purpose.
(compile nil '(lambda (&rest args &optional x))) (compile nil '(lambda (&key key &optional x)))
#241: &rest and &aux can't coexist anymore in lambda lists -----------------------+---------------------------------------------------- Reporter: sboukarev | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: 1.1.0 Component: compiler | Version: Keywords: | -----------------------+----------------------------------------------------
Comment(by ehuelsmann):
(In [14138]) Re #241: Fix cases (compile nil '(lambda (&rest foo &aux x))) and (compile nil '(lambda (&aux x &rest)))
Note: Since the other 2 cases mentioned in the ticket are still open, this commit doesn't actually close it.
#241: &rest and &aux can't coexist anymore in lambda lists -----------------------+---------------------------------------------------- Reporter: sboukarev | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: 1.1.0 Component: compiler | Version: Keywords: | -----------------------+---------------------------------------------------- Changes (by sboukarev):
* cc: stassats@… (added)
Comment:
Good, now drakma can be compiled again.
#241: &rest and &aux can't coexist anymore in lambda lists -----------------------+---------------------------------------------------- Reporter: sboukarev | Owner: ehuelsmann Type: defect | Status: new Priority: major | Milestone: 1.1.0 Component: compiler | Version: Keywords: | -----------------------+----------------------------------------------------
Comment(by ehuelsmann):
(In [14146]) Re #241: Add test cases.
#241: &rest and &aux can't coexist anymore in lambda lists ------------------------+--------------------------------------------------- Reporter: sboukarev | Owner: ehuelsmann Type: defect | Status: closed Priority: major | Milestone: 1.1.0 Component: compiler | Version: Resolution: fixed | Keywords: ------------------------+--------------------------------------------------- Changes (by ehuelsmann):
* status: new => closed * resolution: => fixed
Comment:
(In [14147]) Close #241: Fix "part 2": ABCL accepts disallowed lambda list ordering.
Note: Solved by rewriting PARSE-LAMBDA-LIST.
armedbear-ticket@common-lisp.net