Commit Graph

381 Commits

Author SHA1 Message Date
rocky
293e7b0367 store_subscript precedence fix and...
Allow format specifier "%p" to indicate a nonterminal name,
like "%c" allows.

store_subscr -> store_subscript to match Python AST a little closer.
2019-05-02 06:43:53 -04:00
rocky
132a9acdb4 Was mssing 2.5 cond3 semantic rule 2019-04-23 13:09:14 -04:00
rocky
05db6194ec Use up right 3.x opcodes in jump detection...
A small but pervasive, and I guess important change. More correct COME_FROMs
are now coming out. A number of grammar changes then in 3.0, 3.5, and 3.8
2019-04-23 05:14:29 -04:00
rocky
b2dd58a85e Hacky attemp to add more 3.x annotate information in 2019-04-18 02:26:50 -04:00
rocky
2ea8c3b1b1 3.7 and 3.8 chained compare fixups 2019-04-16 10:19:16 -04:00
rocky
701d2af54e Improve Python 2.7 generator handling 2019-04-15 23:14:44 -04:00
rocky
b4c66d4307 Was missing some 3.7 and 3.7 semantic actions...
Possibly some as a result of the last refactor?
2019-04-15 08:11:31 -04:00
rocky
9b550b9dda PEP E225 with a nod to Deepcommit 2019-04-14 06:11:16 -04:00
rocky
a891aa0706 More 3.8 try blocks 2019-04-11 16:42:28 -04:00
rocky
5e1340a2fc 3.8 exception handling 2019-04-11 12:09:24 -04:00
rocky
f3cd1ee3f3 Add FIXME not for attribute parenthesis 2018-11-12 03:48:44 -05:00
rocky
19ec52eb63 Change AST to SyntaxTree in many places 2018-07-15 12:37:50 -04:00
rocky
93e889e82a Python 3.0 comprehensions are a snowflake 2018-06-24 16:46:56 -04:00
rocky
34ec41f274 Improve 3.0 list comprehensions 2018-06-24 06:56:30 -04:00
rocky
3daf3732c3 Fix Python 3.0 "and" parse rule 2018-06-23 23:04:17 -04:00
rocky
bc16cc93d6 More Python 3.0 parse errors 2018-06-23 13:31:16 -04:00
rocky
f547ec9291 Better is_pypy defaults 2018-06-19 12:26:22 -04:00
rocky
66ebb15d42 Previous two releases botched iterated list comprehensions 2018-06-14 10:32:54 -04:00
rocky
79bed3419f last change left 3.2 finding comp_iter broken 2018-06-10 04:56:57 -04:00
rocky
0353b74a7a 3.0 list comprehensions 2018-06-09 23:14:04 -04:00
rocky
67910e7d8e Python 3.0 set comprehensions 2018-06-09 22:51:07 -04:00
rocky
61fa4fe391 Some Python 3.0 fixes...
Needs more in this direction though.
2018-06-09 10:05:23 -04:00
rocky
189605ea2c Adjust showtree() calls 2018-05-13 14:23:52 -04:00
rocky
4c74bf1d9d --tree++ shows template rule when it is used 2018-05-13 14:21:46 -04:00
rocky
e76f1f107f Better testing of named %c format specifiers 2018-05-08 08:49:43 -04:00
rocky
269f4f2e1b 2.6, 2.7 Parse if else inside list comprehension
Fixes #171
2018-04-28 20:44:09 -04:00
rocky
aab951280b Set precedence better for list comprehensions. 2018-04-28 17:27:29 -04:00
rocky
9545541be7 Isolate Python 3 class code from Python2 2018-04-12 18:10:32 -04:00
rocky
edbab038ca Fix improper 3.0 class handling...
... is like 3.1 not 2.7
2018-04-12 17:59:39 -04:00
rocky
ede6eabc40 Slightly Python 3.x handing of subclasses...
which are created via a call to create a subclass.

Should be more general though.
2018-04-08 05:22:35 -04:00
rocky
1bbb72a6ce Handle class with one kwarg subclass 2018-04-07 07:13:49 -04:00
rocky
1c95eb7b4e Make sure we call 'expr' go set precidence right 2018-04-06 14:04:58 -04:00
rocky
ff9ae4e792 Better handling of BUILD_TUPLE_UNPACK 2018-04-06 11:35:41 -04:00
rocky
341e17f62c Split of Python 3 semantic-action customization...
And remove duplicate customization code in pysource.
2018-04-04 21:54:09 -04:00
rocky
6b78677a74 Work on 3.5+ BUILD_MAP_UNPACK...
bugs still remain, just reduced.
2018-04-01 13:41:16 -04:00
rocky
ab1dba1536 Handle 3.5+ BUILD_MAP_UNPACK used in dictionaries
A number of weaknesses have been uncovered though
2018-04-01 12:56:58 -04:00
rocky
710c950965 Bang on 3.4 CALL_FUNCTION_VAR 2018-03-26 00:19:39 -04:00
rocky
7fb94176b1 Less ambigouus 2.x grammar rule for BUILD_MAP 2018-03-25 12:09:42 -04:00
rocky
e3c7afb94d Towards handling 3.x' CALL_FUNCTION_VAR correctly 2018-03-24 08:26:45 -04:00
rocky
0d327ab0ce Fix bug introduced in last commit 2018-03-24 06:29:35 -04:00
rocky
35a60e0274 Fix parser slowness in decompiling 3.x locale.py..
And remove grammar inefficiency in adding extraneous kwargs in <= 3.2
kwargs was nullable so it might not have been wasn't wrong, just inefficient.
2018-03-23 11:59:04 -04:00
rocky
d41a858f80 Messed up API compatibility 2018-03-21 17:38:38 -04:00
rocky
da06d83a87 3.6 subclass extraction bug 2018-03-21 15:14:23 -04:00
rocky
925b6667d7 3.6 CALL_FUNCTION_KW handling 2018-03-21 08:01:45 -04:00
rocky
5c662b334e Handle 3.x "nonlocal" statement 2018-03-19 07:57:25 -04:00
rocky
1896c40202 Type comp_ifnot -> comp_if_not...
By the way, the sense of comp_if and list_if is reversed.
Will fix later...
2018-03-06 09:53:55 -05:00
rocky
5d24367ef6 Small changes...
pysource.py: Bug fix for relative imports.

scanner2.py: Remove a debug expression
2018-03-05 21:53:49 -05:00
rocky
61534ceed5 Need to back off set_comp change a little...
There was set_comp already. So what had been setcomp_func is now
merely set_comp_func rather than set_comp. Small improvement but
in the right direction, still
2018-03-05 11:41:21 -05:00
rocky
9f66694056 dictcomp_func -> dict_comp_func...
to match AST better. Also adds a correction in last commit,
including set_comp -> set_comp_expr where apprpriate

Note: can't use dict_comp as that was already used.
But dict_comp_func is matches AST better than dictcomp_func
2018-03-05 11:12:15 -05:00
rocky
2bdfd76635 setcomp_func -> set_comp ...
to match AST name more closely
2018-03-05 10:20:14 -05:00