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

(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:46:04 +02:00 committed by GitHub
parent a8ddc9a77a
commit e3b94d8fa4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -403,7 +403,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) {
@ -3756,6 +3755,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));