Skip to content

Bytecode parity - exception#7557

Draft
youknowone wants to merge 6 commits intoRustPython:mainfrom
youknowone:bytecode-parity-exception
Draft

Bytecode parity - exception#7557
youknowone wants to merge 6 commits intoRustPython:mainfrom
youknowone:bytecode-parity-exception

Conversation

@youknowone
Copy link
Copy Markdown
Member

No description provided.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Apr 3, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 3483c789-d6fd-411b-91b9-58b95d8e1ce2

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@youknowone youknowone force-pushed the bytecode-parity-exception branch 2 times, most recently from 7e7e111 to a15185e Compare April 5, 2026 05:06
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Apr 5, 2026

📦 Library Dependencies

The following Lib/ modules were modified. Here are their dependencies:

[x] test: cpython/Lib/test/test_compile.py (TODO: 27)
[x] test: cpython/Lib/test/test_compiler_assemble.py
[x] test: cpython/Lib/test/test_compiler_codegen.py
[x] test: cpython/Lib/test/test_peepholer.py (TODO: 21)

dependencies:

dependent tests: (no tests depend on compile)

Legend:

  • [+] path exists in CPython
  • [x] up-to-date, [ ] outdated

@youknowone youknowone force-pushed the bytecode-parity-exception branch from 94c1a4d to 526b8f3 Compare April 5, 2026 12:13
- ExceptionStack: init with base slot instead of empty vec
- with_frame_impl: save/restore exc_info value instead of
  push/pop slot, so callees see caller's handled exception
- Remove unused with_frame_exc
- resume_gen_frame: use push_exception/pop_exception methods
- codegen: move RERAISE inside cleanup handler's exception
  table range in finally blocks (both try-finally and
  try-except-finally), so POP_EXCEPT runs before re-raising
- Add eliminate_dead_stores pass before peephole_optimize:
  consecutive STORE_FAST to the same variable are replaced
  with POP_TOP (apply_static_swaps from CPython flowgraph.c)
- Remove 3 expectedFailure decorators in test_peepholer
  (test_load_fast_unknown_* now pass)
- Accept updated async_with snapshot
- Fix formatting in ir.rs, mod.rs, Python scripts
@youknowone youknowone force-pushed the bytecode-parity-exception branch from 526b8f3 to 11ad6f4 Compare April 5, 2026 12:13
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