Skip to content

Conversation

CarrBen
Copy link
Owner

@CarrBen CarrBen commented Sep 2, 2025

Summary

  • Handle the new MAKE_FUNCTION Opcode with the MAKE_FUNCTION_A path.
  • Change MAKE_FUNCTION_A to just push a basic ASTFunction for 3.13, and not do anything with the Operand.
  • Add support for the new SET_FUNCTION_ATTRIBUTE_A Opcode, using code from the previous PR that adds support for 3.6-3.12, to add args & kwargs to the basic ASTFunction pushed by MAKE_FUNCTION_A for 3.13.
  • Update CALL to use the new Stack Order for 3.13.
  • Update LOAD_ATTR with undocumented 3.13 changes.
  • Update the printing of source for NODE_STORE where the destination is a NODE_NAME to hide new 3.13 dunder attributes;
    • __static_attributes__
    • __firstlineno__

Tests

  • Add 3.13 Test case for MAKE_FUNCTION & SET_FUNCTION_ATTRIBUTE.
    • Fails without this PR as MAKE_FUNCTION is unsupported.
    • Based on the test case for the previous MAKE_FUNCTION branches that have some additional args & kwargs functions.
  • Add load_method Test case that fails due to a LOAD_ATTR error in 3.13.
    • Once MAKE_FUNCTION is in place, this test case has lots of None's, where NULLs end up in the wrong place in the method calls at the bottom of the file due to the new CALL Stack Order.

@CarrBen CarrBen changed the base branch from bentigration to master September 2, 2025 23:04
@CarrBen CarrBen changed the base branch from master to bentigration September 2, 2025 23:05
…. Apply 3.13 NULL ordering change to LOAD_GLOBAL
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant