rocky
c68b74a9c6
new dis - Python compisons involving tuples
2021-10-15 23:39:59 -04:00
rocky
5a83c7c643
Simplify imports again using xdis 4.6.0
2020-05-19 00:53:53 -04:00
rocky
31db2f3e04
Small typo
2020-05-18 23:29:33 -04:00
rocky
3fb8d90407
Revise for xdis 3.6.0 ...
...
Simplify xdis imports where we can.
Blacken (most) of those buffers too
2020-05-18 21:49:16 -04:00
rocky
ff43565981
3.4-3.4 mixed "and"/"or" parsing ...
...
Fix by limiting more the bogus come from.
2020-05-18 05:33:57 -04:00
rocky
999eee4b5f
More xdis upgrade fixes...
...
LOAD_CONST of unicode in 2.7- is the same thing as LOAD_STR.
I guess previously there was no unicode.
2020-04-18 22:26:24 -04:00
rocky
f117feb585
Use new xdis...
...
Sadly there are some regressions that need to be fixed.
Deal with later.
2020-04-16 11:01:12 -04:00
rocky
869e48877c
Convert to use xdis 4.3.0 or greater
2020-04-16 08:41:53 -04:00
rocky
f6a13302fb
Bugs introduced in last commit
2020-04-04 10:26:46 -04:00
rocky
e8e7d2086d
whileelse in 3.6 sometimes has come froms...
...
also remove extra "L. " in token printing
2020-04-04 10:12:12 -04:00
rocky
5fde4f2e05
Show token number in parser error listing...
...
But only if -g is given
2020-03-31 10:12:52 -04:00
rocky
4067a30573
Fix bug introduced by a recent refactoring
2020-01-24 03:11:51 -05:00
rocky
0421863cd3
I said 3.4 compatibility!
2020-01-23 13:58:50 -05:00
rocky
e0f5cb2bd2
3.4- compliance
2020-01-23 13:51:46 -05:00
rocky
28a80a0132
3.6+ extended arg handling; sync with decompyle3..
...
Use 3.8 scanner now.
TODO: Need to investigate what's up with 3.7/01_extended_arg.py
2020-01-23 13:35:22 -05:00
rocky
018583069b
3.7+ bug in handling extended arg
2020-01-22 14:31:45 -05:00
rocky
ed64e7b443
Check that the jumps to jump fix jumps to a *jump*
2020-01-22 07:07:57 -05:00
rocky
5d64664857
Python 2.6.9 compatibility
2020-01-22 06:27:31 -05:00
rocky
bc50825460
Conditional jumps to extended-arg JUMP_BACK...
...
this is a major reworking. But it leads the way forward to a
simpler grammar.
2020-01-22 05:32:27 -05:00
rocky
505946d747
Add "testtrue" reduction rule...
...
only for 3.7 for now.
2020-01-10 10:26:40 -05:00
rocky
13d9bcaaa9
Some reorg and Lame attempt to disasmbiguate "and" and "if .. if"...
...
More work is needed.
2020-01-08 10:31:19 -05:00
rocky
b2e1edb434
Fix Python 3.7+ "import as" but keep "import from" working
2019-12-28 11:09:31 -05:00
rocky
805ec7dbfc
Add "if_not_and" rule similar to "if_not_or" rule.
2019-12-13 05:15:21 -05:00
rocky
05f3dad32c
Fix some 3.7+ "if"/"and" logic bugs
2019-12-11 06:56:43 -05:00
rocky
edbbefb57d
Start to remove crud in control-flow detection for 3.7+
2019-12-09 18:28:57 -05:00
rocky
daab1e8610
Start to tolerate 3.9 (in pydisassemble)
2019-12-09 12:20:00 -05:00
rocky
eba5226a04
Typos: decompyle3 -> uncompyle6
2019-12-08 18:05:37 -05:00
rocky
c6ddefcef5
Merging in recent 3.7 and 3.8 improvements from decompyle6
...
This rebases 3.7, 3.8 ...decompilation off of 3.7ish rather than a 3.4
base.
Add more 3.7 and 3.8 tests
2019-12-08 17:54:59 -05:00
rocky
ca7f483dbb
Better test coverage of operators (in 2.7 and 3.0)
2019-11-18 18:10:58 -05:00
rocky
dbf2729f76
expand 3.0 "continue" detection
2019-11-16 12:23:09 -05:00
rocky
047e27c966
3.0 assert2...
...
Not like other 3.x due to the lack of POP_JUMP_IF
2019-11-16 09:10:14 -05:00
rocky
09cc0d775a
Pypy 3.3 tolerance and ...
...
Remove some duplicate grammar rules
2019-11-10 13:34:51 -05:00
rocky
ebb0342b38
WIP pypy3.6 handling
2019-10-28 13:20:51 -04:00
rocky
0b3d6b8add
Get ready for release 3.5.0
2019-10-12 19:53:17 -04:00
rocky
24afe072b7
LOAD_CONST -> LOAD_CODE where appropriate
2019-06-19 14:43:07 -04:00
rocky
e2d7f01298
Handle 2-arg asserts in 3.6+ish
...
Changed files have also been reformatted via the blacken formatter
2019-06-18 22:09:16 -04:00
rocky
002720988c
Formatting in < 3.0 is different for name ops
2019-06-11 14:08:50 -04:00
rocky
08f23567a6
Nicer assembly display...
...
Fewer extraneous quotes and remove pattrs that don't mean anything.
Base more on OP poperties like varargs and NAME_OPS
2019-06-11 12:44:29 -04:00
rocky
5981c7eae9
Fix LOAD_STR messing up docstring comparision
2019-06-11 10:33:49 -04:00
rocky
9811c5bc42
Nicer assembly output
2019-06-09 12:21:45 -04:00
rocky
fd5f4fa5b8
Nicer LOAD_STR assembly output
2019-06-09 09:53:21 -04:00
rocky
622d6f849c
Merge branch 'master' into string-const
2019-06-09 01:20:53 -04:00
rocky
117b4ff4f1
Add kwonly parsing.
...
* annotation parsing for kwonly args is missing.
* Start filling out runnable tests. More work is needed on tests.
* refresh incorrect bytecode_3.3_run/15_assert.pyc
2019-06-08 15:29:18 -04:00
rocky
44d7cbcf6f
LOAD_CONST->LOAD_STR for Python 3.x
2019-06-08 02:28:27 -04:00
rocky
46acb74745
Only add forward-jumping COME_FROM in 3.6+
...
Is this a repeat commit?
2019-05-14 06:28:29 -04:00
rocky
44e1288e2f
Less dishonest COME_FROMs
...
Addresses all of the problems seen in 3.7 datetime.py.
However we limit COME_FROMs only to forward jumps, not back (which in the case of Python code right now means looping) jumps.
2019-05-13 23:15:55 -04:00
rocky
b94cce7b12
Revise format string handling
...
fstring_single{1,2} -> format_value{1,2} to match Python AST names
better
2019-05-13 09:40:32 -04:00
rocky
86dd321256
Accept x0ret's suggestion for 3.6+ if detection..
...
in the presense of a try block.
Fixes #229
2019-05-10 19:36:16 -04:00
rocky
af816c9e60
Administrivia
2019-05-03 23:25:25 -04:00
rocky
e2c5a79346
Add pypy3.6 scanner
2019-05-02 06:46:07 -04:00