Skip to content

Function produces non-empty block which the compiler will attempt to read an instruction from #138714

@DinoV

Description

@DinoV

Bug report

Bug description:

# pyre-ignore-all-errors
def f():
    while name:
        try:
            break
        except:
            pass
    else:
        1 if 1 else 1

Produces https://pastebin.com/e34y4hZR before we hit propagate_line_numbers, then the POP_JUMP_IF_FALSE to block 22 causes a read of b_instr[0] which is technically allocated but really shouldn't be read.

CPython versions tested on:

3.14

Operating systems tested on:

Linux

Metadata

Metadata

Assignees

Labels

interpreter-core(Objects, Python, Grammar, and Parser dirs)type-bugAn unexpected behavior, bug, or error

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions