1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-04 19:20:27 +02:00
guile/module/language
Andy Wingo 581f410fbd case-lambda* clauses fail to match if too many positionals
* doc/ref/api-procedures.texi (Case-lambda): Expand case-lambda*
  documentation.

* module/ice-9/eval.scm (primitive-eval):
* libguile/eval.c (prepare_boot_closure_env_for_apply): Dispatch to the
  next case-lambda clause if there are too many positionals.

* doc/ref/vm.texi (Function Prologue Instructions):
* libguile/vm-i-system.c (bind-optionals/shuffle-or-br): New
  instruction, like bind-optionals/shuffle but can dispatch to the next
  clause if there are too many positionals.

* module/language/assembly/disassemble.scm (code-annotation):
* module/language/assembly/decompile-bytecode.scm (decode-load-program):
* module/language/assembly/compile-bytecode.scm (compile-bytecode): Add
  case for bind-optionals/shuffle-or-br.
* module/language/glil/compile-assembly.scm (glil->assembly): If there
  is an alternate, use bind-optionals/shuffle-or-br instead of
  bind-optionals/shuffle.

* test-suite/tests/optargs.test ("case-lambda*"): Add tests.
2013-01-14 11:38:09 +01:00
..
assembly case-lambda* clauses fail to match if too many positionals 2013-01-14 11:38:09 +01:00
brainfuck remove `version' field from <language> 2010-05-02 11:19:13 +02:00
bytecode remove `version' field from <language> 2010-05-02 11:19:13 +02:00
ecmascript compile ecmascript's `return' as an abort 2012-07-05 11:06:29 +02:00
elisp Placate a number of `syntax-check' verifications. 2012-01-05 23:38:10 +01:00
glil case-lambda* clauses fail to match if too many positionals 2013-01-14 11:38:09 +01:00
objcode fix error message on ,disassemble "non-procedure" 2011-03-29 12:38:18 +02:00
scheme tree-il->scheme improvements 2012-03-03 18:05:21 -05:00
tree-il cse: Fix out-of-bounds access to the database. 2012-11-21 23:51:16 +01:00
value remove `version' field from <language> 2010-05-02 11:19:13 +02:00
assembly.scm silly "optimization" in (language assembly) 2011-05-05 11:43:12 +02:00
glil.scm prompt handlers are always inline 2010-02-19 15:30:34 +01:00
objcode.scm Change Guile license to LGPLv3+ 2009-06-17 00:22:09 +01:00
tree-il.scm mvoe tree-il=? and tree-il-hash to tree-il.scm 2012-05-15 12:25:37 +02:00