summaryrefslogtreecommitdiffstats
path: root/Python/symtable.c
Commit message (Collapse)AuthorAgeFilesLines
* 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)
* gh-109390: add dump_symtable utility under #if 0 (#109391)Carl Meyer2023-09-201-1/+110
| | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-109219: propagate free vars through type param scopes (#109377)Carl Meyer2023-09-141-3/+2
| | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-109118: Disallow nested scopes within PEP 695 scopes within classes (#109196)Jelle Zijlstra2023-09-121-0/+23
| | | | | Fixes #109118. Fixes #109194. Co-authored-by: Carl Meyer <carl@oddbird.net>
* gh-109207: Fix SystemError when printing symtable entry object. (GH-109225)云line2023-09-101-3/+2
|
* Check the result of PySet_Contains() for error in Python/symtable.c (GH-109146)Serhiy Storchaka2023-09-081-15/+57
|
* GH-91079: Rename C_RECURSION_LIMIT to Py_C_RECURSION_LIMIT (#108507)Victor Stinner2023-09-081-2/+2
| | | | | | | Symbols of the C API should be prefixed by "Py_" to avoid conflict with existing names in 3rd party C extensions on "#include <Python.h>". test.pythoninfo now logs Py_C_RECURSION_LIMIT constant and other _testcapi and _testinternalcapi constants.
* gh-108765: Cleanup #include in Python/*.c files (#108977)Victor Stinner2023-09-061-1/+1
| | | Mention one symbol imported by each #include.
* GH-107263: Increase C stack limit for most functions, except ↵Mark Shannon2023-08-041-9/+2
| | | | | | `_PyEval_EvalFrameDefault()` (GH-107535) * Set C recursion limit to 1500, set cost of eval loop to 2 frames, and compiler mutliply to 2.
* gh-106869: Use new PyMemberDef constant names (#106871)Victor Stinner2023-07-251-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove '#include "structmember.h"'. * If needed, add <stddef.h> to get offsetof() function. * Update Parser/asdl_c.py to regenerate Python/Python-ast.c. * Replace: * T_SHORT => Py_T_SHORT * T_INT => Py_T_INT * T_LONG => Py_T_LONG * T_FLOAT => Py_T_FLOAT * T_DOUBLE => Py_T_DOUBLE * T_STRING => Py_T_STRING * T_OBJECT => _Py_T_OBJECT * T_CHAR => Py_T_CHAR * T_BYTE => Py_T_BYTE * T_UBYTE => Py_T_UBYTE * T_USHORT => Py_T_USHORT * T_UINT => Py_T_UINT * T_ULONG => Py_T_ULONG * T_STRING_INPLACE => Py_T_STRING_INPLACE * T_BOOL => Py_T_BOOL * T_OBJECT_EX => Py_T_OBJECT_EX * T_LONGLONG => Py_T_LONGLONG * T_ULONGLONG => Py_T_ULONGLONG * T_PYSSIZET => Py_T_PYSSIZET * T_NONE => _Py_T_NONE * READONLY => Py_READONLY * PY_AUDIT_READ => Py_AUDIT_READ * READ_RESTRICTED => Py_AUDIT_READ * PY_WRITE_RESTRICTED => _Py_WRITE_RESTRICTED * RESTRICTED => (READ_RESTRICTED | _Py_WRITE_RESTRICTED)
* gh-107211: Rename PySymtable_Lookup() to _PySymtable_Lookup() (#107212)Victor Stinner2023-07-251-1/+1
| | | | Rename the internal PySymtable_Lookup() function to _PySymtable_Lookup() and no longer export it.
* gh-104656: Rename typeparams AST node to type_params (#104657)Jelle Zijlstra2023-05-221-43/+43
|
* gh-104640: Disallow walrus in comprehension within type scopes (#104641)Jelle Zijlstra2023-05-191-4/+31
|
* gh-104602: ensure all cellvars are known up front (#104603)Carl Meyer2023-05-191-19/+20
| | | Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
* gh-104374: Remove access to class scopes for inlined comprehensions (#104528)Jelle Zijlstra2023-05-181-2/+3
| | | Co-authored-by: Carl Meyer <carl@oddbird.net>
* gh-104572: Improve error messages for invalid constructs in PEP 695 contexts ↵Jelle Zijlstra2023-05-171-4/+4
| | | | (#104573)
* gh-103763: Implement PEP 695 (#103764)Jelle Zijlstra2023-05-161-26/+329
| | | | | | | | | | | | | | This implements PEP 695, Type Parameter Syntax. It adds support for: - Generic functions (def func[T](): ...) - Generic classes (class X[T](): ...) - Type aliases (type X = ...) - New scoping when the new syntax is used within a class body - Compiler and interpreter changes to support the new syntax and scoping rules Co-authored-by: Marc Mueller <30130371+cdce8p@users.noreply.github.com> Co-authored-by: Eric Traut <eric@traut.com> Co-authored-by: Larry Hastings <larry@hastings.org> Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>