diff options
-rw-r--r-- | py/vm.c | 7 | ||||
-rw-r--r-- | tests/basics/tests/try1.py | 5 |
2 files changed, 12 insertions, 0 deletions
@@ -474,6 +474,13 @@ bool mp_execute_byte_code_2(const byte **ip_in_out, mp_obj_t *fastn, mp_obj_t ** assert(exc_sp == &exc_stack[0] - 1); return false; + case MP_BC_RAISE_VARARGS: + unum = *ip++; + assert(unum == 1); + obj1 = POP(); + nlr_jump(obj1); + return false; + case MP_BC_YIELD_VALUE: nlr_pop(); *ip_in_out = ip; diff --git a/tests/basics/tests/try1.py b/tests/basics/tests/try1.py index b3b85372d7..56d3075041 100644 --- a/tests/basics/tests/try1.py +++ b/tests/basics/tests/try1.py @@ -4,3 +4,8 @@ try: x.a() except: print(x) + +try: + raise IndexError +except IndexError: + print("caught") |