trifork / erjang

A JVM-based Erlang VM
http://www.erjang.org
Apache License 2.0
725 stars 62 forks source link

Exception re-raising is broken #42

Closed eriksoe closed 13 years ago

eriksoe commented 13 years ago

How to reproduce

process_flag(trap_exit, true), try exit(x), still_here catch E -> {caught,E} after io:format("after\n") end.

Expected

1> process_flag(trap_exit, true), try exit(x), still_here catch E -> {caught,E} after io:format("after\n") end. after \ exception exit: x 2>

Observed

(rabbit@mcilroy)4> process_flag(trap_exit, true), try exit(x), still_here catch E -> {caught,E} after io:format("after\n") end. after java.lang.Throwable: bad argument to raise2: (x, [{erl_eval,expr,3}]) at erjang.ERT.raise(ERT.java:62) at erjang.m.erl_eval.erl_eval.try_clauses__8(erl_eval.S:263) at erjang.m.erl_eval.erl_eval$FN_try_clauses__8.go(Unknown Source)

krestenkrab commented 13 years ago

How is this related to 48cfb626e5ecd3e0df7b93cd2680169055904553 ?

eriksoe commented 13 years ago

No longer an issue.