diff options
Diffstat (limited to 'src/interp/lisp-backend.boot')
-rw-r--r-- | src/interp/lisp-backend.boot | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/interp/lisp-backend.boot b/src/interp/lisp-backend.boot index 64d2e82e..af3e246b 100644 --- a/src/interp/lisp-backend.boot +++ b/src/interp/lisp-backend.boot @@ -380,11 +380,11 @@ expandTry ['%try,expr,handlers,cleanup] == for [.,var,mode,stmt] in handlers] handlerBody := ys = nil => g - ys := [:ys,['%true,['THROW,$OpenAxiomCatchTag,g]]] + ys := [:ys,['%otherwise,['THROW,$OpenAxiomCatchTag,g]]] ['%when, [['%and,['%pair?,g], ['%peq,['%head,g],$OpenAxiomCatchTag]], ['%when,:ys]], - ['%true,g]] + ['%otherwise,g]] tryBlock := expandBind ['%bind,[[g,['CATCH,$OpenAxiomCatchTag,expr]]],handlerBody] cleanup = nil => tryBlock |