90 Commits

Author SHA1 Message Date
rocky
1a3f2b8ab0 Misc lint 2024-07-21 17:34:06 -04:00
rocky
b28f3058fc Expand grammar check for ifelse continue for 2.7 2024-07-12 21:30:46 -04:00
rocky
cb2b90a94f Python 2.5 try/except reduce fix
Start getting aligner up to date
2024-07-12 14:15:04 -04:00
rocky
a42bef12d2 Remove a false negative test for try/except in 25 2024-07-12 12:39:27 -04:00
rocky
b88af23406 Mis spelling corrections 2024-03-14 05:39:30 -04:00
rocky
e3be41164e Add pop return check from decompyle3 2024-02-25 08:34:13 -05:00
rocky
8865599145 Fixes #467 2023-08-09 04:48:42 -04:00
Andre Eberle
7f3c1fa3a4 Tentative fix for issue #437. I added a new set of rules in ifelsestmt.py to check against for offsets. Seems to have fixed current issue. The result output is switching nested if-else-if-else-etc to a chain of if-elif-elif now, but semantically seems correct. 2023-04-08 16:54:55 -04:00
rocky
514b0d0b0c Sync from decompyle3 2022-11-06 01:24:28 -05:00
James Hilliard
e08324d85c Replace remaining self.opc with token.opc 2022-11-05 19:39:31 -04:00
rocky
207dc0b506 opc field in while1 reduction is off of token...
not self (parse)
2022-11-05 19:20:16 -04:00
rocky
1819fc8944 ifelsetmt - jump back is only allowed inside loops 2022-10-16 17:50:58 -04:00
rocky
976705fc0a Add: Python 2.7: ifelsestmtc 2022-10-10 04:30:48 +02:00
rocky
2264ccb1d5 A partial reduce-action sync with decompyle3
Start us add _check prefixes and _invalid to the end of check methods
2022-09-30 02:45:52 -04:00
rocky
ad1fa98870 Detect Python 2.7 weird "for-block" bytecode
It has an unnecessary JUMP_ABSOLUTE to a JUMP_LOOP

Fixes #408
2022-09-27 08:58:35 -04:00
rocky
4260deea11 Tidy ifelsemstmt check 2022-08-29 05:46:46 -04:00
R. Bernstein
200250df56 Merge pull request #406 from tangboxuan/master
Fix offset of extended argument instruction
2022-08-24 05:51:41 -04:00
rocky
765b0149ea iftstmt reduce rule for 2.6:
In ifsmt there can be a JUMP_ABSOLUTE right before the endif and a jump
the endif doesn't fall through to the place after the endif.
2022-08-24 05:33:22 -04:00
Bo Xuan
2f3b5e53d4 Add test case 2022-08-24 16:19:39 +08:00
rocky
71b1446c9c Push reducechecks from 2.7 into 2.6
Some adaption is needed. These rules may also help earlier 2.x Python as well
2022-08-23 21:36:55 -04:00
rocky
21b4d52a77 Correct 2.6 erroneous ifelse detection 2022-08-23 16:50:50 -04:00
Bo Xuan
81633b3c1c Fix offset of extended argument instruction 2022-08-23 14:18:31 +08:00
rocky
610f2c827c Remove 3.6-specific iflastsmt reduce check
Fixes #344
2022-07-07 06:54:05 -04:00
rocky
5a4136a7f6 Some limited support for 3.8 "=" specifier 2022-07-06 13:00:52 -04:00
rocky
cc4ea47d24 Use ifelsetmt reduction rule on 2.7 2022-07-04 07:56:44 -04:00
rocky
3490389a66 Correct some Python 2.6 chain compare bugs 2022-03-05 04:03:27 -05:00
rocky
15efaffe8d More Python version tuple comparison conversion 2021-10-16 11:41:22 -04:00
rocky
c68b74a9c6 new dis - Python compisons involving tuples 2021-10-15 23:39:59 -04:00
rocky
024a81c053 Fix condition sense in except_handler.py reduction 2020-07-23 11:03:43 -04:00
rocky
5079164db2 Add reduce check for aug_assign1 2020-07-07 09:54:57 -04:00
rocky
ef59b9c304 Forelse reduction checks on 2.6 2020-07-06 10:09:42 -04:00
rocky
084e183577 Add reduce check for 2.7 except_handler range 2020-07-05 22:18:07 -04:00
rocky
4007b8b702 Back off "or" check using instructions vs opcodes 2020-06-27 11:44:23 -04:00
rocky
598b58796d Back off buggy "or" check 2020-06-27 11:33:46 -04:00
rocky
357f28dd89 Add "comp_if_not" for 2.6- 2020-06-27 11:16:47 -04:00
rocky
5cc572147a Handle more ifelse reduction rules patterns 2020-06-27 09:10:48 -04:00
rocky
02f502c40a New grammar rule often imples expanded reduce rule 2020-06-12 21:12:02 -04:00
rocky
5237d704fa Remove stray debug stmt 2020-04-20 23:13:06 -04:00
rocky
dc7f1ed0cc Final remnants of xdis fixes?
Restore the last of the excluded bytecode.
2020-04-18 23:24:56 -04:00
rocky
e2baccb4e5 Reinstate 3.5 tests 2020-04-18 23:18:24 -04:00
rocky
9ca94717e0 Yet another workaround 2020-04-18 19:53:04 -04:00
rocky
b77efec36c git commit -m'Adjust "or" offset check ...
for Python < 3.6 hopefully it doesn't break Python 3.6+
2020-04-18 19:21:59 -04:00
rocky
17d07eaf00 continuing xdis refactor aftermath...
Both 2.7 bytecode broken from the refactor have now been reinstated, but
two 3.5 and 3.6 bytecode have moved into the "todo" category.
2020-04-18 18:47:06 -04:00
rocky
2fd61b1016 Add 3.7ish "or" check 2020-04-16 16:35:27 -04:00
rocky
badfe5456f Track "or" grammar changes...
Remove re deprecation warning
2020-04-16 15:25:42 -04:00
rocky
874d196e5c 3.x ifelsestmtc reduction rule fix 2020-02-13 05:41:15 -05:00
rocky
8836444be2 Correct ifelsestmtc rules for 3.x 2020-02-09 08:14:44 -05:00
rocky
e2504c2421 3.7 ifelstmtl reduction rule checking 2020-02-08 13:47:05 -05:00
rocky
b0931275a2 Need more precise "assert" for 3.8...
Add rule for ifelsestmtl which is needed in 3.8
2020-02-08 11:46:19 -05:00
rocky
7c73536b4a 3.6 "assert" and "or" handling bugs 2020-02-08 07:27:31 -05:00