def deep() { try { } catch { } finally { if (2) { } } } def func() { deep(); } def doing() { for (auto i = 0; i < 10; ++i) { func(); } } def while_doing() { while (true) { doing(); } } auto f = fun() { while_doing(); } assert_true(get_eval_error(f).call_stack.size() <= 16)