Background:
Frequent mismatches show CALL/LOAD_CONST, FORMAT_SIMPLE/BINARY_OP, and related
expression-sequence rewrites, indicating divergence in call and expression lowering
order.
Task:
- Review bytecode generation around function/method calls, unary/binary operations, and
formatted string/format-like code paths.
- Ensure RustPython emits equivalent pre/post stack state for:
- CALL argument preparation
BINARY_OP classification
FORMAT_SIMPLE handling
- Keep instruction-level stack effect consistent with CPython for equivalent source
snippets.
Acceptance criteria:
- Mismatch counts for pairs involving CALL/BINARY_OP/FORMAT_SIMPLE decrease.
- No regression in small syntax/format-heavy modules (e.g., string formatting tests, AST
unparse paths).
Background:
Frequent mismatches show
CALL/LOAD_CONST,FORMAT_SIMPLE/BINARY_OP, and relatedexpression-sequence rewrites, indicating divergence in call and expression lowering
order.
Task:
formatted string/format-like code paths.
BINARY_OPclassificationFORMAT_SIMPLEhandlingsnippets.
Acceptance criteria:
unparse paths).