rocky / python-xdis

Python cross-version bytecode library and disassembler
GNU General Public License v2.0
292 stars 95 forks source link

3.11 exception table #108

Closed rocky closed 1 year ago

2elli commented 1 year ago

Did some testing and found there are some issues disassembling 3.11 from earlier versions. I believe this is an issue with the exception tables and cross-version unmarshal. Will take a deeper look when I get the chance.

rocky commented 1 year ago

Did some testing and found there are some issues disassembling 3.11 from earlier versions. I believe this is an issue with the exception tables and cross-version unmarshal. Will take a deeper look when I get the chance.

Ok - great. Which python versions?

2elli commented 1 year ago

Did some testing and found there are some issues disassembling 3.11 from earlier versions. I believe this is an issue with the exception tables and cross-version unmarshal. Will take a deeper look when I get the chance.

Ok - great. Which python versions?

This would be running xdis with 3.10 on a 3.11 bytecode. The error is coming from unmarshal here: https://github.com/rocky/python-xdis/blob/790398656130903fe6309cd1c3b5496fc4f03acd/xdis/unmarshal.py#L222-L231

Need to add support for the correct 3.11 unmarshal types for I believe.