rocky
04ae94ee9e
Add python 3.4 grammar checking
...
DRY grammar testing
2016-07-27 18:32:15 -04:00
rocky
e8ed17967c
Clean and check Python 2.6 grammar
2016-07-27 18:03:07 -04:00
rocky
3f7c4209d9
Start to segregate and clean up grammar
2016-07-27 17:35:21 -04:00
rocky
f33f425692
Add is_pypy parameter to places that need it
2016-07-27 16:08:40 -04:00
rocky
5ffd9b2be7
2.6 and 2.7 while1 grammar rule
...
Fixes issue #40
2016-07-27 13:19:42 -04:00
rocky
87dc5ad80c
Start grammar checker
2016-07-27 11:02:01 -04:00
rocky
177a422b87
Show magic number in output
...
Fix bugs due to removal of token.format()
2016-07-27 09:44:05 -04:00
rocky
3a78332d59
tok.format -> tok.__str__; simplify pypy code
2016-07-27 09:26:39 -04:00
rocky
5e801b5d74
Python 2.7 set comprehension bug
2016-07-27 08:36:33 -04:00
rocky
2523b340cd
separate semantic action version differences
...
Added customize_for_version which
uses is_pypy and version to adjust tables
2016-07-27 07:32:55 -04:00
rocky
c3f6fa32db
Customize tables better for specific Python versions
2016-07-27 06:56:02 -04:00
rocky
6dc9d3ab2f
Small code clean up
2016-07-27 06:01:49 -04:00
rocky
74f440bd0b
Usuability fixes
...
* try using format for __str__
* Explicitly nuke self.attr and self.pattr when no arg
* Sync pysource and format wrt make_function
2016-07-26 20:49:41 -04:00
rocky
affc504418
Get ready for release 2.7.1
2016-07-26 17:13:10 -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
9f0b0809b1
Instruction formatting - yet again
2016-07-25 23:09:34 -04:00
rocky
f0a8505887
Add grammar for PyPy 2-arg assert
2016-07-25 22:36:02 -04:00
rocky
04cc80b0d6
PyPy BUILD_MAP_n. Reinstate bytecode tests
2016-07-25 21:53:56 -04:00
rocky
281f429223
Handle PyPy BUILD_MAP_0 where actual kw_args > 0
2016-07-25 17:50:19 -04:00
rocky
8cfecff9c4
Clean up PyPy load_attr grammar rules
2016-07-25 16:05:08 -04:00
rocky
96b83c3d85
Add pypy scanners
2016-07-25 13:29:03 -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
7e1aa6a34d
add_custom_rules() in 2.x and 3.x are more alike
2016-07-25 09:33:11 -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
285444e19a
Better assembly formatting of jump instructions
2016-07-25 00:36:39 -04:00
rocky
aed4d23c34
More PyPy LOOKUP_METHOD rules
2016-07-24 20:59:44 -04:00
rocky
1c50e34c30
PyPy support
...
* Use proper PYPY 32 opcodes
* handle opcodes LOOKUP_METHOD and CALL_METHOD
* Administrative stuff for PyPy
2016-07-24 18:54:51 -04:00
rocky
21683719e1
Start supporting PyPy 3.2
...
Add some PyPy 2.7 and PyPy 3.2 bytecode files
2016-07-24 04:17:54 -04:00
rocky
ca9888ace4
Another 2.7 'continue' detection bug
2016-07-23 17:44:42 -04:00
rocky
21377f3b43
Merge branch 'master' into pypy
...
Conflicts:
uncompyle6/scanners/scanner2.py
2016-07-23 10:57:58 -04:00
rocky
a5f45f232d
2.7: Detect "continue" inside except
...
Fixes issue #38 .
This is a bit hacky. We need a more general "continue" detection.
2016-07-23 10:37:41 -04:00
rocky
7c4316d4fb
Start handling pypy 2.7
...
Need to understand whether we care compiling pypy.
Pypy 2.7 list comprehensions are different and use
its own opcode.
2016-07-21 02:58:50 -04:00
rocky
063e517a7c
Better parse error formatting
...
Start to move away for compiler-oriented terminology:
Favor "instructions" over "tokens".
Syntax error -> Parse error.
2016-07-17 16:27:17 -04:00
rocky
4a3a62d01b
Align disassembly output with xdis
...
align number of offset fields with xdis.
Show None type when we mean None, not ''
2016-07-17 14:00:00 -04:00
rocky
ea733c31d7
Respect after/both option in scanner3
2016-07-17 12:38:48 -04:00
rocky
942b15e3c6
Suppress arg in dissassembly if there is none
2016-07-16 14:12:31 -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
accc959b71
Get ready for release 2.7.0
2016-07-15 02:54:00 -04:00
rocky
0ee52aeeef
Isolate pseudo op IMPORT_NAME_CONT
...
I think this is a holdover from pre 2.3 days. Possibly it can be dropped altogether.
2016-07-14 21:05:09 -04:00
rocky
c9d1f72424
Attempt to get 3.5 RETURN_END_IF working
...
This feels hacky and I'm not sure is quite right.
Untili we understand better what to do though, we'll
go with it.
2016-07-14 14:49:57 -04:00
rocky
29990c8da0
3.x __qualname__ = supression
...
Class names have become more complicated so the pattern test
needs to be more complex as well. Sigh
2016-07-14 12:57:48 -04:00
rocky
4e6e38358d
3.x list comprehenions list_if_not, comp_ifnot bug
...
Saw only list_if_not bug, but might also be applicable
to comp_ifnot
2016-07-14 11:30:42 -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
7b7a9fa4cf
Python 3.4 assertion handling. Improve verify
...
3.4 has jump optimization like 3.5.
verify.py: show mismatch on verification mismatch
2016-07-14 05:20:30 -04:00
rocky
7cc55f0c5f
Back off showing verification errors
...
Pending why this failing in make.
2016-07-13 13:47:30 -04:00
rocky
723ba1365f
"return None" -> "pass"
...
Python 3.4 classes have what looks like a return None, but this
is invalid syntax. So for now we'll remove all "return None"s.
There may be a "pass" in there instead.
2016-07-13 13:37:07 -04:00
rocky
6a125d49d8
Merge branch 'master' of github.com:rocky/python-uncompyle6
2016-07-13 13:01:36 -04:00
rocky
fd0d8d2567
Travis workaround
...
Not sure what's up with 01-class on 3.4. remove for now.
More info in 2.7.11 on what failed.
2016-07-13 13:00:03 -04:00
rocky
772c67fcd7
Debugging smutz caused verify failures
2016-07-13 09:53:51 -04:00