Open

Description
This code fails to decompile under python3.8:
for x in arr_a:
for y in arr_b:
var = True
break
Bytecode:
1 0 LOAD_NAME 0 (arr_a)
2 GET_ITER
>> 4 FOR_ITER 22 (to 28)
6 STORE_NAME 1 (x)
2 8 LOAD_NAME 2 (arr_b)
10 GET_ITER
>> 12 FOR_ITER 12 (to 26)
14 STORE_NAME 3 (y)
3 16 LOAD_CONST 0 (True)
18 STORE_NAME 4 (var)
4 20 POP_TOP
22 JUMP_ABSOLUTE 4
24 JUMP_ABSOLUTE 12
>> 26 JUMP_ABSOLUTE 4
>> 28 LOAD_CONST 1 (None)
30 RETURN_VALUE
Error:
# uncompyle6 version 3.7.2
# Python bytecode 3.8 (3413)
# Decompiled from: Python 3.8.3 (default, May 14 2020, 11:03:12)
# [GCC 9.3.0]
# Embedded file name: ./code.py
# Compiled at: 2020-06-29 18:58:01
# Size of source mod 2**32: 69 bytes
Instruction context:
L. 4 20 POP_TOP
-> 22 CONTINUE 4 'to 4'
24 JUMP_BACK 12 'to 12'
# file __pycache__/code.cpython-38.pyc
# --- This code section failed: ---
L. 1 0 LOAD_NAME arr_a
2 GET_ITER
4 FOR_ITER 28 'to 28'
6 STORE_NAME x
L. 2 8 LOAD_NAME arr_b
10 GET_ITER
12 FOR_ITER 26 'to 26'
14 STORE_NAME y
L. 3 16 LOAD_CONST True
18 STORE_NAME var
L. 4 20 POP_TOP
22 CONTINUE 4 'to 4'
24 JUMP_BACK 12 'to 12'
26 JUMP_BACK 4 'to 4'
Parse error at or near `CONTINUE' instruction at offset 22
This seems to be caused by the 'break' being recognised as a 'continue'?