rocky
65b9ecee31
Fix some 2.3 bugs; add more 2.3-6. tests
2016-07-09 17:33:54 -04:00
rocky
047c95a1e5
2.3 while1stmt bug
2016-07-09 13:13:10 -04:00
rocky
ac45e5757c
Redo Python 2.3 to be more like the rest
2016-07-09 09:11:04 -04:00
rocky
d6b35d57e4
DRY scanner code. Allow 2.4 decompile from 3.x
2016-07-08 21:37:09 -04:00
rocky
11eddb7940
Add more 2.4 and 2.6 tests
2016-07-08 18:24:14 -04:00
rocky
62e60817f6
Start handling Pyton 2.4 bytecodes
2016-07-08 15:00:23 -04:00
rocky
e020f8f9a9
2.5/2.6 RETURN_VALUE bug
2016-07-08 12:02:28 -04:00
rocky
b640d42113
2.5/2.6 fn name clash
...
fixes list conprehension problem
2016-07-08 10:38:56 -04:00
rocky
1a2aa41f7d
Python 2.5 with statement
2016-07-08 10:30:49 -04:00
rocky
6f5dce342f
Start going over Python 2.5 bytecode
...
Fix 2.6 with bug
2016-07-08 07:01:48 -04:00
rocky
663e724788
Remove 2.7 asynchat verifcation for now
2016-07-07 13:56:04 -04:00
rocky
06023c247d
while1 bug in 2.6 and 2.7
2016-07-07 13:08:00 -04:00
rocky
8b305f78f4
2.6 POP_TOP and POP_JUMP_IF bugs
2016-07-07 07:03:20 -04:00
rocky
f865ecaa58
2.6.9 bug: multiple COME_FROMs via "or"/"assert"
2016-07-06 21:07:40 -04:00
rocky
14b4f8e2da
2.6.9 elif with multiple COME_FROMs
2016-07-06 20:56:29 -04:00
rocky
aa65b098a4
< 2.7 bug in not distinguishing raise from assert
2016-07-06 19:52:02 -04:00
rocky
a1dab0fa3a
Add 10_if_else_ternary.pyc for 2.5
2016-07-04 10:21:38 -04:00
rocky
12d22c055f
Python 2.6 with as stmt
2016-07-02 22:24:28 -04:00
rocky
4dff02b19c
2.6 ifelsestmt
2016-07-01 17:15:00 -04:00
rocky
71822bf9b3
Another 2.6 return_stmt bug
2016-07-01 07:51:15 -04:00
rocky
fa6ae76a64
2.6 return_stmt bug
2016-07-01 06:50:06 -04:00
rocky
261c60efd9
More 2.6.9 bugs fixed
...
* break loop parsing bug
* ifelsestmt semantic-action bug in handling else
2016-06-30 21:42:49 -04:00
rocky
d87b5fe34c
2.6 conditional in list comprehension bug
2016-06-30 19:51:13 -04:00
rocky
73a043830c
2.6.9 list comprehension
2016-06-30 06:51:20 -04:00
rocky
da9aeecc60
<= 2.6 weird jump out of try block
...
Allow COME_FROMs to appare via JUMP_FORWARD in
tey/except blocks
2016-06-30 06:21:13 -04:00
rocky
4b0b7f76dc
2.6 genexpr. Some not quite right.
2016-06-29 23:32:29 -04:00
rocky
d7f7748000
2.6.9 assert 2-arg bug
2016-06-29 22:28:52 -04:00
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