Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
67607d8
Update compiled test_functions_py3.3.4 to match input file.
CarrBen Feb 10, 2025
3400283
Update MAKE_FUNCTION to pull args in correct order for py3.4
CarrBen Feb 10, 2025
64a9b83
Update compiled test_functions_py3.3.0 to match input file.
CarrBen Feb 10, 2025
ea12dad
Update tokenized test_functions_py3.txt to match input file.
CarrBen Feb 10, 2025
040a766
Fix MAKE_FUNCTION for py3.0-3.3
CarrBen Feb 10, 2025
d8d86e9
Fix MAKE_FUNCTION indent
CarrBen Feb 11, 2025
ad675e5
Add additional test case for multiple kwargs in Python3 function
CarrBen Feb 11, 2025
f89a1a5
Update compiled test_functions_py3.3.7 to match input file & remove f…
CarrBen Feb 11, 2025
287f715
Update MAKE_FUNCTION to handle args based on the new flags for py3.6-12
CarrBen Feb 11, 2025
5d79f6c
Merge branch 'master' into py37_MAKE_FUNCTION_default_args
CarrBen Aug 31, 2025
03aab08
Add failing test for Python 3.13 Make Function & Set Function Attribute
CarrBen Aug 31, 2025
d45b3d7
Changes to LOAD_ATTR and CALL for Python 3.13 arg ordering on the stack
CarrBen Aug 31, 2025
ed59697
Implement MAKE_FUNCTION & SET_FUNCTION_ATTRIBUTE_A for Python 3.13
CarrBen Aug 31, 2025
1405891
Filter out extra dunder strings added to functions in 3.13
CarrBen Aug 31, 2025
b1081a1
Tweak documentation on LOAD_ATTR changes
CarrBen Sep 2, 2025
546f5c3
Add additional 3.13 .pyc that failed for LOAD_ATTR due to c.test1() &…
CarrBen Sep 2, 2025
3fa7e13
Relocate the removal of __firstlineno__ and __static_attributes__ to …
CarrBen Sep 2, 2025
b3d7965
Fix LOAD_ATTR to remove extra pops from the 3.13 NULL ordering change…
CarrBen Sep 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
242 changes: 211 additions & 31 deletions ASTree.cpp

Large diffs are not rendered by default.

Binary file added tests/compiled/load_method.3.13.pyc
Binary file not shown.
Binary file modified tests/compiled/test_functions_py3.3.0.pyc
Binary file not shown.
Binary file added tests/compiled/test_functions_py3.3.13.pyc
Binary file not shown.
Binary file modified tests/compiled/test_functions_py3.3.4.pyc
Binary file not shown.
Binary file not shown.
3 changes: 3 additions & 0 deletions tests/input/test_functions_py3.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,3 +57,6 @@ def x7c(foo = 1, *, bar, **kwargs):

def x7d(foo = 1, *, bar = 2, **kwargs):
pass

def x7e(foo = 1, *, bar = 2, baz = 3, **kwargs):
pass
40 changes: 36 additions & 4 deletions tests/tokenized/test_functions_py3.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,18 +34,50 @@ def x4c ( foo , bar = 1 , bla = 2 , * args , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x5a ( * , bar = 1 ) : <EOL>
def x5a ( * , bar ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x5b ( * , bar = 1 , ** kwargs ) : <EOL>
def x5b ( * , bar = 1 ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x6a ( foo , * , bar = 1 ) : <EOL>
def x5c ( * , bar = 1 , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x7a ( foo , * , bar = 1 , ** kwargs ) : <EOL>
def x6a ( foo , * , bar ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x6b ( foo , * , bar = 1 ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x6c ( foo = 1 , * , bar ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x6d ( foo = 1 , * , bar = 2 ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x7a ( foo , * , bar , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x7b ( foo , * , bar = 1 , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x7c ( foo = 1 , * , bar , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x7d ( foo = 1 , * , bar = 2 , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
<OUTDENT>
def x7e ( foo = 1 , * , bar = 2 , baz = 3 , ** kwargs ) : <EOL>
<INDENT>
pass <EOL>
Loading