mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-05-28 16:00:22 +02:00
<glil-mv-bind> can truncate values anonymously
* module/language/glil/compile-assembly.scm (glil->assembly): Allow an integer for `vars', which means simply to truncate the values, and not pass binding metadata to the compiler.
This commit is contained in:
parent
da7497e0fd
commit
a5c96cb99d
1 changed files with 14 additions and 7 deletions
|
@ -333,13 +333,20 @@
|
|||
arities))
|
||||
|
||||
((<glil-mv-bind> vars rest)
|
||||
(values `((truncate-values ,(length vars) ,(if rest 1 0)))
|
||||
(open-binding bindings vars addr)
|
||||
source-alist
|
||||
label-alist
|
||||
object-alist
|
||||
arities))
|
||||
|
||||
(if (integer? vars)
|
||||
(values `((truncate-values ,vars ,(if rest 1 0)))
|
||||
bindings
|
||||
source-alist
|
||||
label-alist
|
||||
object-alist
|
||||
arities)
|
||||
(values `((truncate-values ,(length vars) ,(if rest 1 0)))
|
||||
(open-binding bindings vars addr)
|
||||
source-alist
|
||||
label-alist
|
||||
object-alist
|
||||
arities)))
|
||||
|
||||
((<glil-unbind>)
|
||||
(values '()
|
||||
(close-binding bindings addr)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue