]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-124058: remove _PyCompile_IsNestedScope, roll it into _PyCompile_IsInteractive...
authorIrit Katriel <1055913+iritkatriel@users.noreply.github.com>
Mon, 16 Sep 2024 13:58:18 +0000 (14:58 +0100)
committerGitHub <noreply@github.com>
Mon, 16 Sep 2024 13:58:18 +0000 (06:58 -0700)
Include/internal/pycore_compile.h
Python/codegen.c
Python/compile.c

index 2304d698474355aea4c5f47f9754377f9bfb1c2b..f089eb05097b521c98f28c268d49664745be10ff 100644 (file)
@@ -133,8 +133,7 @@ int _PyCompile_LookupCellvar(struct _PyCompiler *c, PyObject *name);
 int _PyCompile_ResolveNameop(struct _PyCompiler *c, PyObject *mangled, int scope,
                              _PyCompile_optype *optype, Py_ssize_t *arg);
 
-int _PyCompile_IsInteractive(struct _PyCompiler *c);
-int _PyCompile_IsNestedScope(struct _PyCompiler *c);
+int _PyCompile_IsInteractiveTopLevel(struct _PyCompiler *c);
 int _PyCompile_IsInInlinedComp(struct _PyCompiler *c);
 int _PyCompile_ScopeType(struct _PyCompiler *c);
 int _PyCompile_OptimizationLevel(struct _PyCompiler *c);
index 5565d3011c465a3fb0f0758309657a98507c820d..0305f4299aec56954e2ee55e3c9460ac37a070d6 100644 (file)
@@ -70,8 +70,7 @@ typedef struct _PyCompiler compiler;
 #define SYMTABLE(C) _PyCompile_Symtable(C)
 #define SYMTABLE_ENTRY(C) _PyCompile_SymtableEntry(C)
 #define OPTIMIZATION_LEVEL(C) _PyCompile_OptimizationLevel(C)
-#define IS_INTERACTIVE(C) _PyCompile_IsInteractive(C)
-#define IS_NESTED_SCOPE(C) _PyCompile_IsNestedScope(C)
+#define IS_INTERACTIVE_TOP_LEVEL(C) _PyCompile_IsInteractiveTopLevel(C)
 #define SCOPE_TYPE(C) _PyCompile_ScopeType(C)
 #define QUALNAME(C) _PyCompile_Qualname(C)
 #define METADATA(C) _PyCompile_Metadata(C)
@@ -2823,7 +2822,7 @@ codegen_assert(compiler *c, stmt_ty s)
 static int
 codegen_stmt_expr(compiler *c, location loc, expr_ty value)
 {
-    if (IS_INTERACTIVE(c) && !IS_NESTED_SCOPE(c)) {
+    if (IS_INTERACTIVE_TOP_LEVEL(c)) {
         VISIT(c, expr, value);
         ADDOP_I(c, loc, CALL_INTRINSIC_1, INTRINSIC_PRINT);
         ADDOP(c, NO_LOCATION, POP_TOP);
index e1d2c30944d132cf8725b46ac4c6cfd0fd885c71..cdd4878257525f2b93a55959b6270cadb7f36020 100644 (file)
@@ -1204,17 +1204,12 @@ _PyCompile_OptimizationLevel(compiler *c)
 }
 
 int
-_PyCompile_IsInteractive(compiler *c)
-{
-    return c->c_interactive;
-}
-
-int
-_PyCompile_IsNestedScope(compiler *c)
+_PyCompile_IsInteractiveTopLevel(compiler *c)
 {
     assert(c->c_stack != NULL);
     assert(PyList_CheckExact(c->c_stack));
-    return PyList_GET_SIZE(c->c_stack) > 0;
+    bool is_nested_scope = PyList_GET_SIZE(c->c_stack) > 0;
+    return c->c_interactive && !is_nested_scope;
 }
 
 int