summaryrefslogtreecommitdiff
path: root/test/racc/assets/err.y
diff options
context:
space:
mode:
Diffstat (limited to 'test/racc/assets/err.y')
-rw-r--r--test/racc/assets/err.y60
1 files changed, 60 insertions, 0 deletions
diff --git a/test/racc/assets/err.y b/test/racc/assets/err.y
new file mode 100644
index 0000000000..ae280957cc
--- /dev/null
+++ b/test/racc/assets/err.y
@@ -0,0 +1,60 @@
+
+class ErrTestp
+
+rule
+
+target: lines
+ ;
+
+lines: line
+ | lines line
+ ;
+
+line: A B C D E
+ | error E
+ ;
+
+end
+
+---- inner
+
+def initialize
+ @yydebug = false
+ @q = [
+ [:A, 'a'],
+ # [:B, 'b'],
+ [:C, 'c'],
+ [:D, 'd'],
+ [:E, 'e'],
+
+ [:A, 'a'],
+ [:B, 'b'],
+ [:C, 'c'],
+ [:D, 'd'],
+ [:E, 'e'],
+
+ [:A, 'a'],
+ [:B, 'b'],
+ # [:C, 'c'],
+ [:D, 'd'],
+ [:E, 'e'],
+ [false, nil]
+ ]
+end
+
+def next_token
+ @q.shift
+end
+
+def on_error( t, val, values )
+ $stderr.puts "error on token '#{val}'(#{t})"
+end
+
+def parse
+ do_parse
+end
+
+---- footer
+
+p = ErrTestp.new
+p.parse