mirror of
https://github.com/python/cpython.git
synced 2026-01-05 15:02:33 +00:00
The compiler was reseting the list comprehension tmpname counter for each function, but the symtable was using the same counter for the entire module. Repair by move tmpname into the symtable entry. Bugfix candidate.
66 lines
1.3 KiB
Text
66 lines
1.3 KiB
Text
test_grammar
|
|
1. Parser
|
|
1.1 Tokens
|
|
1.1.1 Backslashes
|
|
1.1.2 Numeric literals
|
|
1.1.2.1 Plain integers
|
|
1.1.2.2 Long integers
|
|
1.1.2.3 Floating point
|
|
1.1.3 String literals
|
|
1.2 Grammar
|
|
single_input
|
|
file_input
|
|
expr_input
|
|
eval_input
|
|
funcdef
|
|
lambdef
|
|
simple_stmt
|
|
expr_stmt
|
|
print_stmt
|
|
1 2 3
|
|
1 2 3
|
|
1 1 1
|
|
extended print_stmt
|
|
1 2 3
|
|
1 2 3
|
|
1 1 1
|
|
hello world
|
|
del_stmt
|
|
pass_stmt
|
|
flow_stmt
|
|
break_stmt
|
|
continue_stmt
|
|
continue + try/except ok
|
|
continue + try/finally ok
|
|
testing continue and break in try/except in loop
|
|
return_stmt
|
|
raise_stmt
|
|
import_stmt
|
|
global_stmt
|
|
exec_stmt
|
|
assert_stmt
|
|
if_stmt
|
|
while_stmt
|
|
for_stmt
|
|
try_stmt
|
|
suite
|
|
test
|
|
comparison
|
|
binary mask ops
|
|
shift ops
|
|
additive ops
|
|
multiplicative ops
|
|
unary ops
|
|
selectors
|
|
|
|
atoms
|
|
classdef
|
|
['Apple', 'Banana', 'Coco nut']
|
|
[3, 6, 9, 12, 15]
|
|
[3, 4, 5]
|
|
[(1, 'Apple'), (1, 'Banana'), (1, 'Coconut'), (2, 'Apple'), (2, 'Banana'), (2, 'Coconut'), (3, 'Apple'), (3, 'Banana'), (3, 'Coconut'), (4, 'Apple'), (4, 'Banana'), (4, 'Coconut'), (5, 'Apple'), (5, 'Banana'), (5, 'Coconut')]
|
|
[(1, 'Banana'), (1, 'Coconut'), (2, 'Banana'), (2, 'Coconut'), (3, 'Banana'), (3, 'Coconut'), (4, 'Banana'), (4, 'Coconut'), (5, 'Banana'), (5, 'Coconut')]
|
|
[[1], [1, 1], [1, 2, 4], [1, 3, 9, 27], [1, 4, 16, 64, 256]]
|
|
[False, False, False]
|
|
[[1, 2], [3, 4], [5, 6]]
|
|
[('Boeing', 'Airliner'), ('Boeing', 'Engine'), ('Ford', 'Engine'), ('Macdonalds', 'Cheeseburger')]
|