Commit Graph

125 Commits

Author SHA1 Message Date
rocky
f5eeed6759 2.6- bug: while..and: stmt - on one line
If 2.6 or before POP_BLOCK after a JUMP_IF_FALSE does not
constitute a new statement. The POP_BLOCK is really part
of the JUMP_IF_FALSE. In Python 2.7+ it's a single op.
2016-09-01 20:44:17 -04:00
rocky
1d567d5d9a Handle Python 2.6 and below "except <cond>, <var>" 2016-09-01 02:20:07 -04:00
rocky
c9f364df9f Python 3.x bug in handling var number of args 2016-08-31 06:20:29 -04:00
rocky
6189ce3c04 Bug in 3.x detecting "if" structure and ...
scanner3.py: bug in 3.x detecting "if" structure
Make scanner2.py look more like scanner3.py
verify.py: add weak-verify which tests Pytyon syntax, but not code
2016-08-31 04:07:42 -04:00
rocky
6f2cdc164d Handle Python 2 vs 3 raise syntax change
raise_stmt ::=  "raise" expression "," expression
becomes:
   raise_stmt ::=  "raise" expression from expression

raise expr, expr -> raise
2016-08-30 00:42:24 -04:00
rocky
1087613a27 Handle 3.6 Format String conversions !r, !s, !a 2016-08-25 07:26:01 -04:00
rocky
31413be7a1 Python 2.2 doesn't have opcode LIST_APPEND 2016-08-16 12:45:43 -04:00
rocky
2e3e6658ee Small pypy LOOKUP_METHOD cleanups 2016-08-16 06:09:10 -04:00
rocky
a65443ee02 Fix pypy semantic action bug in CALL_METHOD 2016-08-14 22:59:34 -04:00
rocky
33a0c75b69 Merge branch 'master' of github.com:rocky/python-uncompyle6 2016-08-13 20:26:52 -04:00
rocky
7ccbd419c6 Correct SET_LINENO handling in Python 2.2
Add more  2.2 tests
2016-08-13 20:25:19 -04:00
rocky
fb5ad76c4e Include Python 2.2 in testing 2016-08-13 09:07:15 -04:00
rocky
c77e9cdaf8 Add Python 3.6 formatted_str test 2016-08-01 09:47:45 -04:00
rocky
5ffd9b2be7 2.6 and 2.7 while1 grammar rule
Fixes issue #40
2016-07-27 13:19:42 -04:00
rocky
ecbbc7dfea Custom PyPy rules for tryfinallysmt, assign{2,3} 2016-07-26 16:49:14 -04:00
rocky
6c5bd6289f More PyPy grammar rules
* assert one and two-arg form
* trystmt

Simplify adding multiple grammar rules
2016-07-26 10:21:12 -04:00
rocky
a3e10db8dc Handle PyPy CALL_METHOD op more correctly
Start testing pypy2.7 and 3.2 bytecodes
2016-07-25 13:05:54 -04:00
rocky
476eb50868 Handle PyPy JUMP_IF_NOT_DEBUG
Update README.rst to note PyPY and reorganize a little
2016-07-25 09:18:03 -04:00
rocky
070b7dab7b Another 2.7 'continue' detection bug 2016-07-23 17:42:42 -04:00
rocky
f6f3ad362b 2.7: Detect "continue" inside except
Fixes issue #38.

This is a bit hacky. We need a more general "continue" detection.
2016-07-23 11:02:01 -04:00
rocky
cd8cbf9200 Add 3.5 matrix mult ops
We now run 3.5 verifycation so we need to remove some
of the tests that fail to verify pending fixing.
2016-07-15 12:12:19 -04:00
rocky
fb870ccd8d 3.x ""raise AssertionError" vs "assert"
Not sure this is totally correct yet.
2016-07-14 10:31:12 -04:00
rocky
772c67fcd7 Debugging smutz caused verify failures 2016-07-13 09:53:51 -04:00
rocky
b99f196d18 Better 3.2/33 store_locals handling 2016-07-12 09:46:46 -04:00
rocky
78f24f9c66 Python 3.2 & 3.3 handle STORE_NAME better 2016-07-11 23:24:52 -04:00
rocky
8e0413273b Fix some Python set comprehension bugs 2016-07-11 18:23:05 -04:00
rocky
c10b9babbe Add missing a test source file 2016-07-11 10:22:06 -04:00
rocky
b44c566a9f Python 2.3 list comprehensions 2016-07-09 18:13:08 -04:00
rocky
65b9ecee31 Fix some 2.3 bugs; add more 2.3-6. tests 2016-07-09 17:33:54 -04:00
rocky
e020f8f9a9 2.5/2.6 RETURN_VALUE bug 2016-07-08 12:02:28 -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
06023c247d while1 bug in 2.6 and 2.7 2016-07-07 13:08:00 -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
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
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