summaryrefslogtreecommitdiff
path: root/test/racc/assets/nonass.y
blob: b9a35a262634fbc26a3399da5efa0044581d914f (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
31
32
33
34
35
36
37
38
39
40
41
#
# nonassoc test
#

class P

preclow
  nonassoc N
  left P
prechigh

rule

target : exp
exp    : exp N exp
       | exp P exp
       | T

end

---- inner

  def parse
    @src = [[:T,'T'], [:N,'N'], [:T,'T'], [:N,'N'], [:T,'T']]
    do_parse
  end

  def next_token
    @src.shift
  end

---- footer

begin
  P.new.parse
rescue ParseError
  exit 0
else
  $stderr.puts 'parse error not raised: nonassoc not work'
  exit 1
end