rocky
5b2198a4a6
A 2.6 comprehension bug
2016-06-29 21:24:19 -04:00
rocky
32ca0c4482
2.6 ifelse/while modifications
2016-06-29 12:46:02 -04:00
rocky
36432c7488
Add more come_from_pops
2016-06-28 14:43:58 -04:00
rocky
74c6b38fd8
2.6. with fn()
2016-06-28 10:54:01 -04:00
rocky
ae980e4f64
Base 2.5 off of 2.6. Some other small bugs.
2016-06-28 03:31:32 -04:00
rocky
40d4348757
2.6 list comprehensions
2016-06-27 17:53:06 -04:00
rocky
460ad129cc
WIP 2.6 j{f,b}_pop fix
2016-06-27 16:16:35 -04:00
rocky
fa7d8f955a
WIP Python-2.6 but don't remove opcodes
...
The scheme for turning 2.6 bytecode into 2.7 psuedo bytecode
I think is a lose.
I won't work for fragment handling.
Instead, change the grammar and syntax rules
This also has the benefits:
* We see how code generation changed over releases
by looking at grammar and semantic rules rather
than arbitrary code
* We can better assocate with what's running
(in a sense this is a restatement of broken fragment
handling)
* With the right structure in place we are in a better position to
handle 2.5, 2.4, etc. That is, after a while, the incremental changes
to get say from python 2.3 bytecode to python 2.7 are great.
Conflicts:
uncompyle6/parsers/astnode.py
2016-06-24 18:15:59 -04:00
rocky
9a2369830d
Python 3.5 if handling...
...
Allow RETURN_END_IF in a return statement
May want to do this in other versions as well, but right now
we only need it here.
2016-06-22 22:09:06 -04:00
rocky
f999e6a33a
Another kind of yield_from on 3.5
2016-06-22 16:48:03 -04:00
rocky
126af429fb
differing ways to do "yield from" in 3.3-3.5
2016-06-22 16:29:58 -04:00
rocky
480e6a125f
Add Python 3.5 yield from and ...
...
* fragments.py: Handle pass stmt sometimes
* scanners: regularize Python 2 scanners some
* test/test_pyenvlib.py: add python 3.5.1 option
2016-06-22 13:08:11 -04:00
rocky
c77e4a9dc9
Python 3.2 MAKE_FUNCTION adjustment
2016-06-22 02:11:59 -04:00
rocky
1a83c849dc
Python 3 needs Python2's RETURN_END_IF
...
Make python2 and python3 scanner look more the same
2016-06-20 22:12:29 -04:00
rocky
a6fbe4c636
previous 2.7 class decorator bug fixed in 3.x
2016-06-20 20:19:17 -04:00
rocky
24d4cfb150
Python 3 set comprehension bug
2016-06-20 18:47:03 -04:00
rocky
59780483a8
Python 3.x class bug using subclass fns
2016-06-20 17:20:47 -04:00
rocky
8c374904f5
3.x make closure kw args handling bug
2016-06-20 10:01:18 -04:00
rocky
078f15013e
Python 3.x class decorator bug
2016-06-20 00:32:00 -04:00
rocky
efb4012087
Correct kw+pos args semantics on 3.3
...
Sync fragment make_function code
2016-06-19 21:41:40 -04:00
rocky
8b50dda9ef
Start 3.3 positional and kw parameters
...
Semantic routines need more work.
2016-06-19 19:18:45 -04:00
rocky
bd809dc08b
Another 3.x bug involving jumps
2016-06-19 17:47:43 -04:00
rocky
109d99bc62
Revert assert test on 3.4 until we figure out how to address
2016-06-19 13:59:24 -04:00
rocky
5c268ee2a6
2.7 and 3.x bug in dict comprehensions
2016-06-19 13:45:07 -04:00
rocky
520290898b
3.4 Load assert bug
2016-06-19 11:52:38 -04:00
rocky
f8ccb8065e
3.4 tryifelse bug
2016-06-19 11:15:36 -04:00
rocky
5d86a4e536
Python 3 except clause parsing bug
2016-06-19 10:30:39 -04:00
rocky
2c22e86562
Python 3.3 is more like 3.4 than we had thought?
2016-06-19 03:23:25 -04:00
rocky
10b95cd9a8
Fix * in multi-target assignment
2016-06-19 02:31:19 -04:00
rocky
d7b79c2b59
3.4 dictionary comprehension bug
...
Sync up fragment code with recent changesa
2016-06-19 00:49:22 -04:00
rocky
73df5f3737
3.4 set comprehension if bug
2016-06-18 23:43:50 -04:00
rocky
70d4841a6a
Fix python 3 set comprehension and ...
...
Add a few set/list comprehension offsets for Python 3
2016-06-06 17:04:59 -04:00
rocky
bdd8a9f2a0
Can't handle python 2.3 on 3.x for now
2016-06-03 10:55:13 -04:00
rocky
ebcb1d08f4
Limited support for Python 2.3
2016-06-03 10:20:52 -04:00
rocky
3da4c9ce77
Start custom grammar for 2.6 and ...
...
fix a python 2.6.9 deparse with lc if+and+not
2016-06-02 19:16:27 -04:00
rocky
3e5876dd03
Back of some of the last disasm changes
...
Was failing test_disasm and I don't want to deal with that now.
Add more 2.7 bytecode tests
2016-05-30 00:23:51 -04:00
rocky
69bb74c86e
DRY scanner25 and scanner26 more
2016-05-29 22:18:36 -04:00
rocky
fca233419f
Remove dis3. Fix in 3.x list if not comprehension
2016-05-28 12:05:38 -04:00
rocky
64191aa2d3
use xdis 3.4-3.5 opcodes
2016-05-28 00:58:27 -04:00
rocky
b6a0c5a704
Remove bytecode that doesn't exist on CircleCI
2016-05-25 20:08:12 -04:00
rocky
79f4893cd9
final RETURN removal bug
...
We want to remove a final return from a module, but otherwise not.
Note we'll no lonager be able to verify functools.pyc as there
is now a return after a raise statement. That will have to be
delt with separately.
May address Issue #17 .
2016-05-23 22:41:46 -04:00
rocky
09f6286bec
Fix 3.x generator bug...
...
found by Daniel Brandburn. See
af61622960
2016-05-21 05:09:27 -04:00
rocky
207edbd53d
Small changes
...
test_pyenvlib.py: cleanup code a little
uncompyle6/main.py: more explicit decompile msg
2016-05-20 22:19:17 -04:00
rocky
68ff878b3e
Small pyflakes stuff
2016-05-20 21:37:46 -04:00
rocky
6956e88e0e
Small changes and administrivia
2016-05-19 08:40:20 -04:00
rocky
1121ff2456
Handle marshal frozenset
2016-05-18 17:01:40 -04:00
rocky
06edeeeb46
Get ready for release 2.4.0
2016-05-18 12:46:23 -04:00
rocky
a3dd61c981
Fix marshal bug in handling complex numbers
2016-05-17 19:25:34 -04:00
rocky
9462e33f48
Fix Python 3.x bugs
...
* class definitions made via closures
* Add "make check-short" to top-level
* parse3.py: Python 3.3 uses STORE_LOGALS
2016-05-17 04:00:54 -04:00
rocky
f69c76c351
Fix a number of small bugs...
...
test_peynv.py: make Python3 compatible
marsh.py: remove duplicate test
scanner3.py: fix opcode typo
2016-05-16 21:31:02 -04:00