rocky
f4ac13ef0f
Python 2.5-2.6 generator bug
...
Adjust for variable position of list iteration node in a genexpr node
2016-09-03 21:37:32 -04:00
rocky
8f95ec9882
Python 2.7 "return None" bug
...
Same as 2.3-2.6 "return None".
2016-09-03 10:27:21 -04:00
rocky
b6fd9088b8
Python 2.3..2.6 "return" bug
...
In Python 2.6 and possibly down to 2.3 we need to issue "return" not
"return None" inside a generator. So check for that "return None"
inside n_return and issue "return" for that.
2016-09-03 08:04:52 -04:00
rocky
52a35e6c62
Fix Python 2.4-2.6 comp_for text generation...
...
Makefile: tolerate pypy 5.3.x
Rest: fix semantic action rule for comp_for and test this
2016-09-03 00:30:48 -04:00
rocky
136f935e26
Fix Python 3.x named param and kwargs bug
2016-09-02 06:30:39 -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
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
f47aecae9f
PYPY bugs and inspired changes ...
...
verify.py: Show co_flags when different.
pysource.py: PYPY also generates normal tryfinallystmt code
test_pyenvlib.py: allow pypy-5.3.1
2016-08-27 19:32:42 -04:00
rocky
1087613a27
Handle 3.6 Format String conversions !r, !s, !a
2016-08-25 07:26:01 -04:00
rocky
a65443ee02
Fix pypy semantic action bug in CALL_METHOD
2016-08-14 22:59:34 -04:00
rocky
d8598f61e4
Start handling Python 2.2 bytecode and...
...
Fix some bugs in Python 2.3-2.5 bytecode handling
2016-08-13 07:16:50 -04:00
rocky
65a16327ce
Moagstar's 3.6 wordcode + formattedValue rules
2016-08-01 03:16:26 -04:00
rocky
3a6f9d8f24
Fix 3.5 misclassifying RETURN_VALUE
...
We use location of SETUP_EXCEPT instructions to disambiguate.
2016-07-29 08:56:23 -04:00
rocky
5ffd9b2be7
2.6 and 2.7 while1 grammar rule
...
Fixes issue #40
2016-07-27 13:19:42 -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
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
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
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
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
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
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
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
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
772c67fcd7
Debugging smutz caused verify failures
2016-07-13 09:53:51 -04:00
rocky
bc86b73cf0
Document/correct hide_internal and store_locals
2016-07-12 12:07:48 -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
62e60817f6
Start handling Pyton 2.4 bytecodes
2016-07-08 15:00:23 -04:00
rocky
694e1edd00
More offsets captrued Add %b specifer
...
%b - associate text before specifier
pysource.py: small doc correction
2016-07-03 21:57:46 -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
bd5b2be8fa
Oh Python and your f*'d notions of spacing
2016-06-30 07:02:34 -04:00
rocky
73a043830c
2.6.9 list comprehension
2016-06-30 06:51:20 -04:00
rocky
4b0b7f76dc
2.6 genexpr. Some not quite right.
2016-06-29 23:32:29 -04:00
rocky
32ca0c4482
2.6 ifelse/while modifications
2016-06-29 12:46:02 -04:00
rocky
0af3dd28bc
Weird 2.6.9 list comprehension
2016-06-28 17:37:13 -04:00
rocky
40d4348757
2.6 list comprehensions
2016-06-27 17:53:06 -04:00
rocky
982a6010a1
WIP 2.6 redo bytecode handling
...
Don't try to convert 2.6 bytecode to 2.7 psuedo bytecode.
Instead adjust grammar and semantic actions.
Down the line we should to segregate version changes in
semantic code better.
2016-06-24 09:23:30 -04:00
rocky
493ffa62fe
Python 3.5 and setcomp_func's
...
A comprehension walk in Python 3.5 needs to include
setcomp_func's.
2016-06-22 22:21:54 -04:00
rocky
126af429fb
differing ways to do "yield from" in 3.3-3.5
2016-06-22 16:29:58 -04:00