RTL VM: receive-values has allow-extra? flag
authorAndy Wingo <wingo@igalia.com>
Mon, 14 Oct 2013 14:09:43 +0000 (16:09 +0200)
committerAndy Wingo <wingo@igalia.com>
Mon, 14 Oct 2013 14:09:43 +0000 (16:09 +0200)
commit82f4bac420db15b3d41313f1f0213ea34a443d60
tree9bb42363c95274ba25af4f6d6d08a6ab54518878
parentc6cd692f08eee7d02249d6891324511bf81aee20
RTL VM: receive-values has allow-extra? flag

* libguile/vm-engine.c (receive-values): Add an ALLOW-EXTRA? flag in
  unused bits of the third word.  Without it, receive-values will check
  for the exact number of incoming values.

* libguile/vm.c (vm_error_wrong_number_of_values): New error case.

* module/language/cps/compile-rtl.scm (emit-rtl-sequence): Adapt to add
  the ALLOW-EXTRA? flag.
libguile/vm-engine.c
libguile/vm.c
module/language/cps/compile-rtl.scm