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)
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)