summaryrefslogtreecommitdiff
path: root/modules/language/python/def.scm
diff options
context:
space:
mode:
authorStefan Israelsson Tampe <stefan.itampe@gmail.com>2018-04-15 22:29:50 +0200
committerStefan Israelsson Tampe <stefan.itampe@gmail.com>2018-04-15 22:29:50 +0200
commit77e4e51a919c50e2847527aaffe67e8e19b970ae (patch)
tree61a261e5b053da07493610b947fd8b51e1a8c2f4 /modules/language/python/def.scm
parent7c0c098b89dc33ad1018b6542def4e2d34ddd2a8 (diff)
progressively imporoving the conformance with python3
Diffstat (limited to 'modules/language/python/def.scm')
-rw-r--r--modules/language/python/def.scm7
1 files changed, 6 insertions, 1 deletions
diff --git a/modules/language/python/def.scm b/modules/language/python/def.scm
index 5c83b6f..fa4cbc5 100644
--- a/modules/language/python/def.scm
+++ b/modules/language/python/def.scm
@@ -82,7 +82,12 @@
(ww- (fold get-ww '() #'(arg ...)))
(kv (fold get-kv '() #'(arg ...))))
(if (and-map null? (list kw ww- kv))
- #`(object-method (lambda #,as code ...))
+ #`(object-method
+ (lambda (#,@as . u12345678)
+ (if (and (pair? u12345678)
+ (not (keyword? (car u12345678))))
+ (raise (ArgumentError "too many arguments to function")))
+ code ...))
(with-syntax ((kw (if (null? kw)
(datum->syntax x (gensym "kw"))
(car kw)))