mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-24 12:20:20 +02:00
Fix multi-arity dispatch in GOOPS
* module/oop/goops.scm (multiple-arity-dispatcher): Fix dispatch for max-arity+1 when a generic is already in multiple-arity dispatch. Fixes #24454. * test-suite/tests/goops.test ("dispatch"): Add test.
This commit is contained in:
parent
4dcc97288d
commit
c7fb87cd6e
2 changed files with 12 additions and 1 deletions
|
@ -1333,7 +1333,7 @@ function."
|
|||
#`(case-lambda
|
||||
#,@(build-clauses #'(arg ...))
|
||||
(args (apply miss args)))))))
|
||||
(arity-case (vector-length fv) 20 dispatch
|
||||
(arity-case (1- (vector-length fv)) 20 dispatch
|
||||
(lambda args
|
||||
(let ((nargs (length args)))
|
||||
(if (< nargs (vector-length fv))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue