mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-04-30 03:40:34 +02:00
This keeps things higher level, and is a step towards structured exceptions in guile. * module/language/cps/guile-vm/reify-primitives.scm (reify-primitives): Turn raise-type-error, raise-range-error, and raise-arity-error into variants of "throw". Lower raise-exception to a non-tail primcall. * module/language/tree-il/compile-cps.scm: Instead of residualizing "throw/value+data" throws, exceptions introduced by CPS lowering are more structured: raise-type-error, raise-range-error, and raise-arity-error. Also, lower raise-exception to an ordinary `$throw` instead of eagerly producing the non-tail call to a $prim. |
||
---|---|---|
.. | ||
loop-instrumentation.scm | ||
lower-primcalls.scm | ||
reify-primitives.scm |