[3.13] gh-151112: Move an assert that may fail in cfg_builder_check (GH-151153) (#151315)

(cherry picked from commit 2d3381035d)

Co-authored-by: Stan Ulbrych <stan@python.org>
This commit is contained in:
Miss Islington (bot) 2026-06-11 11:40:49 +02:00 committed by GitHub
parent 5c17ae6c1c
commit 807333df72
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -380,7 +380,6 @@ cfg_builder_maybe_start_new_block(cfg_builder *g)
static bool
cfg_builder_check(cfg_builder *g)
{
assert(g->g_entryblock->b_iused > 0);
for (basicblock *block = g->g_block_list; block != NULL; block = block->b_list) {
assert(!_PyMem_IsPtrFreed(block));
if (block->b_instr != NULL) {
@ -2486,6 +2485,7 @@ _PyCfg_OptimizeCodeUnit(cfg_builder *g, PyObject *consts, PyObject *const_cache,
int nlocals, int nparams, int firstlineno)
{
assert(cfg_builder_check(g));
assert(g->g_entryblock->b_iused > 0);
/** Preprocessing **/
/* Map labels to targets and mark exception handlers */
RETURN_IF_ERROR(translate_jump_labels_to_targets(g->g_entryblock));