]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.15] gh-151112: Move an `assert` that may fail in `cfg_builder_check` (GH-151153...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Thu, 11 Jun 2026 09:46:04 +0000 (11:46 +0200)
committerGitHub <noreply@github.com>
Thu, 11 Jun 2026 09:46:04 +0000 (09:46 +0000)
(cherry picked from commit 2d3381035df24fbf512d897daa19a1040f7af3fd)

Co-authored-by: Stan Ulbrych <stan@python.org>
Python/flowgraph.c

index b63906818e2d6cd3addec371dbe50a947abe3357..d9b8b2a3af402b5da65a082ba3032533513960bf 100644 (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));