summaryrefslogtreecommitdiffstats
path: root/Python/symtable.c
Commit message (Collapse)AuthorAgeFilesLines
* gh-135801: Add the module parameter to compile() etc (GH-139652)Serhiy Storchaka2025-11-131-2/+2
| | | | | | | Many functions related to compiling or parsing Python code, such as compile(), ast.parse(), symtable.symtable(), and importlib.abc.InspectLoader.source_to_code() now allow to pass the module name used when filtering syntax warnings.
* gh-121914: Change the names of the symbol tables for lambda and genexpr ↵Serhiy Storchaka2025-07-131-5/+5
| | | | | | | (GH-135288) Change the names of the symbol tables for lambda expressions and generator expressions to "<lambda>" and "<genexpr>" respectively to avoid conflicts with user-defined names.
* gh-133379: Fix misuse of the term "arguments" in error messages (GH-133382)Stan Ulbrych2025-05-101-3/+3
| | | The right term is "parameters".
* gh-132661: Implement PEP 750 (#132662)Lysandros Nikolaou2025-04-301-0/+8
| | | | | | | | | | | | | Co-authored-by: Lysandros Nikolaou <lisandrosnik@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com> Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com> Co-authored-by: Wingy <git@wingysam.xyz> Co-authored-by: Koudai Aono <koxudaxi@gmail.com> Co-authored-by: Dave Peck <davepeck@gmail.com> Co-authored-by: Terry Jan Reedy <tjreedy@udel.edu> Co-authored-by: Paul Everitt <pauleveritt@me.com> Co-authored-by: sobolevn <mail@sobolevn.me>
* gh-130907: Treat all module-level annotations as conditional (#131550)Jelle Zijlstra2025-04-281-2/+4
|
* gh-132479: Fix crash with multiple comprehensions in annotations (#132778)Jelle Zijlstra2025-04-211-6/+7
|
* gh-128632: fix segfault on nested __classdict__ type param (#128744)Tomasz Pytel2025-04-041-6/+16
|
* gh-130924: Do not create cells for usages of names in local annotations ↵Jelle Zijlstra2025-03-291-12/+24
| | | | (#131843)
* gh-130881: Handle conditionally defined annotations (#130935)Jelle Zijlstra2025-03-261-9/+62
|
* GH-131238: More refactoring of core header files (GH-131351)Mark Shannon2025-03-171-1/+1
| | | | Adds new pycore_stats.h header file to help break dependencies involving the pycore_code.h header.
* gh-131238: Add explicit includes to pycore headers (#131257)Victor Stinner2025-03-171-0/+5
|
* gh-111178: Fix function signatures in symtable.c (#130589)Victor Stinner2025-02-261-6/+8
|
* GH-130396: Use computed stack limits on linux (GH-130398)Mark Shannon2025-02-251-34/+13
| | | | | | | | | | | * Implement C recursion protection with limit pointers for Linux, MacOS and Windows * Remove calls to PyOS_CheckStack * Add stack protection to parser * Make tests more robust to low stacks * Improve error messages for stack overflow
* GH-91079: Revert "GH-91079: Implement C stack limits using addresses, not ↵Petr Viktorin2025-02-241-13/+34
| | | | | | | | | counters. (GH-130007)" for now (GH130413) Revert "GH-91079: Implement C stack limits using addresses, not counters. (GH-130007)" for now Unfortunatlely, the change broke some buildbots. This reverts commit 2498c22fa0a2b560491bc503fa676585c1a603d0.
* GH-91079: Implement C stack limits using addresses, not counters. (GH-130007)Mark Shannon2025-02-191-34/+13
| | | | | | | | | | | | * Implement C recursion protection with limit pointers * Remove calls to PyOS_CheckStack * Add stack protection to parser * Make tests more robust to low stacks * Improve error messages for stack overflow
* gh-127274: Defer nested methods (#128012)mpage2024-12-191-0/+7
| | | | | | | Methods (functions defined in class scope) are likely to be cleaned up by the GC anyway. Add a new code flag, `CO_METHOD`, that is set for functions defined in a class scope. Use that when deciding to defer functions.
* gh-126072: Set docstring attribute for module and class (#126231)Xuanteng Huang2024-11-081-0/+8
|
* gh-126072: do not add `None` to `co_consts` if there is no docstring (GH-126101)Xuanteng Huang2024-10-301-0/+10
|
* gh-125196: Use PyUnicodeWriter in symtable.c (#125199)Victor Stinner2024-10-091-19/+16
|
* gh-115754: Use Py_GetConstant(Py_CONSTANT_EMPTY_STR) (#125194)Victor Stinner2024-10-091-1/+1
| | | | | Replace PyUnicode_New(0, 0), PyUnicode_FromString("") and PyUnicode_FromStringAndSize("", 0) with Py_GetConstant(Py_CONSTANT_EMPTY_STR).
* gh-122985: add SYMBOL_TO_SCOPE macro in symtable (#122986)Irit Katriel2024-08-141-2/+2
|
* gh-122562: fix dump_symtable for ste_free and ste_child_free removal (#122825)Irit Katriel2024-08-081-1/+1
|
* gh-122595: Add more error checks in the compiler (GH-122596)Serhiy Storchaka2024-08-061-30/+89
|
* gh-122313: Clean up deep recursion guarding code in the compiler (GH-122640)Serhiy Storchaka2024-08-031-119/+122
| | | | | | | | | Add ENTER_RECURSIVE and LEAVE_RECURSIVE macros in ast.c, ast_opt.c and symtable.c. Remove VISIT_QUIT macro in symtable.c. The current recursion depth counter only needs to be updated during normal execution -- all functions should just return an error code if an error occurs.
* gh-122562: Remove ste_free and ste_child_free from symtable (#122563)Jelle Zijlstra2024-08-011-12/+0
|
* gh-119180: Add evaluate functions for type params and type aliases (#122212)Jelle Zijlstra2024-07-271-20/+11
|
* gh-122245: move checks for writes and shadowing of __debug__ to symtable ↵Irit Katriel2024-07-261-7/+85
| | | | (#122246)
* gh-121637: Syntax error for optimized-away incorrect await (#121656)Jelle Zijlstra2024-07-221-7/+39
| | | Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* gh-121272: move async for/with validation from compiler to symtable (#121361)Irit Katriel2024-07-041-0/+22
|
* gh-121352: use _Py_SourceLocation in symtable (#121353)Irit Katriel2024-07-041-127/+68
|
* gh-121272: set ste_coroutine during symtable construction (#121297)Irit Katriel2024-07-031-0/+12
| | | compiler no longer modifies the symtable after this.
* gh-121272: move __future__ import validation from compiler to symtable (#121273)Irit Katriel2024-07-021-0/+24
|
* Fixes loop variables to be the same types as their limit (GH-120958)Steve Dower2024-06-241-7/+7
|
* gh-119933: Improve ``SyntaxError`` message for invalid type parameters ↵Bénédikt Tran2024-06-171-26/+54
| | | | | expressions (#119976) Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-120029: remove unused macros in ``symtable.c`` (#120222)Bénédikt Tran2024-06-121-1/+0
| | | | Co-authored-by: Carl Meyer <carl@oddbird.net> Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-120385: Fix reference leak in symtable (#120386)Kirill Podoprigora2024-06-121-1/+3
| | | Decref 'new_ste' if symtable_visit_annotations() fails.
* gh-119180: PEP 649 compiler changes (#119361)Jelle Zijlstra2024-06-111-53/+145
|
* gh-119666: fix multiple class-scope comprehensions referencing __class__ ↵Carl Meyer2024-06-101-13/+10
| | | | (#120295)
* gh-119981: Use do while(0) in some symtable.c multi-line macros (#119982)Bénédikt Tran2024-06-031-45/+52
|
* gh-119311: Fix name mangling with PEP 695 generic classes (#119464)Jelle Zijlstra2024-05-281-7/+42
| | | | Fixes #119311. Fixes #119395.
* gh-116126: Implement PEP 696 (#116129)Jelle Zijlstra2024-05-031-15/+44
| | | | | Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com>
* gh-109118: Make comprehensions work within annotation scopes, but without ↵Jelle Zijlstra2024-04-281-14/+4
| | | | | inlining (#118160) Co-authored-by: Carl Meyer <carl@oddbird.net>
* gh-109118: Allow lambdas in annotation scopes in classes (#118019)Jelle Zijlstra2024-04-221-11/+0
|
* gh-117411: move PyFutureFeatures to pycore_symtable.h and make it private ↵Irit Katriel2024-04-021-2/+2
| | | | (#117412)
* gh-96497: Mangle name before symtable lookup in ↵wookie1842024-02-171-4/+10
| | | | 'symtable_extend_namedexpr_scope' (GH-96561)
* gh-114828: Fix __class__ in class-scope inlined comprehensions (#115139)Carl Meyer2024-02-071-0/+19
|
* GH-113655: Lower the C recursion limit on various platforms (GH-113944)Mark Shannon2024-01-161-7/+2
|
* gh-113842: Add missing error check for PyIter_Next() in Python/symtable.c ↵Yan Yanchii2024-01-091-0/+6
| | | | (GH-113843)
* gh-111789: Use PyDict_GetItemRef() in Python/symtable.c (gh-112084)Serhiy Storchaka2023-11-271-8/+4
|
* gh-111123: symtable should visit exception handlers before the else block ↵Irit Katriel2023-10-211-2/+2
| | | | (#111142)