summaryrefslogtreecommitdiff
path: root/ext/ply/test/yacc_rr_unused.py
blob: 1ca5f7e5b7baa0d638f64ae686b1691eba95c1f2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# -----------------------------------------------------------------------------
# yacc_rr_unused.py
#
# A grammar with reduce/reduce conflicts and a rule that never
# gets reduced.
# -----------------------------------------------------------------------------
import sys

if ".." not in sys.path: sys.path.insert(0,"..")
import ply.yacc as yacc

tokens = ('A', 'B', 'C')

def p_grammar(p):
   '''
   rule1 : rule2 B
         | rule2 C

   rule2 : rule3 B
         | rule4
         | rule5

   rule3 : A

   rule4 : A

   rule5 : A
   '''

yacc.yacc()