[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#12929: case-lambda*
From: |
Daniel Llorens |
Subject: |
bug#12929: case-lambda* |
Date: |
Mon, 19 Nov 2012 11:38:17 +0100 |
See the thread here
http://lists.gnu.org/archive/html/guile-user/2012-11/msg00032.html
In Guile 2.0.6
(define f (case-lambda*
((x #:optional y) 1)
((x #:key y) 2)
((x y #:key z) 3)))
(f 1 2 #:z 3) -> Odd length of keyword argument list
Also
(define g (case-lambda*
((a #:key x) 1)
((a b c #:key x) 3)))
(g 1 2 3) - > Invalid keyword
This behavior doesn't seem useful and doesn't follow from the doc on
case-lambda*, which is rather vague and lacks examples.
The case-lambda* test in tree-il.test also fails on the REPL
(let ((f (case-lambda*
((x #:optional y) 1)
((x #:key y) 2)
((x y #:key z) 3))))
(list (f 1)
(f 1 2)
(f #:y 2)
(f 1 2 #:z 3)))
-> Odd length of keyword argument list
Thanks,
Daniel
- bug#12929: case-lambda*,
Daniel Llorens <=