nitcc: parser adds the original error token in the node_stack
authorJean Privat <jean@pryen.org>
Fri, 18 Oct 2013 17:27:56 +0000 (13:27 -0400)
committerJean Privat <jean@pryen.org>
Fri, 18 Oct 2013 17:27:56 +0000 (13:27 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

23 files changed:
contrib/nitcc/tests/sav/empty.input.res
contrib/nitcc/tests/sav/empty.input2.res
contrib/nitcc/tests/sav/inf5000-04-lexer-demo.input2.res
contrib/nitcc/tests/sav/inf5000-06-grammaire2-grammaire.input.res
contrib/nitcc/tests/sav/lalr.input3.res
contrib/nitcc/tests/sav/lexer-markers.alt1.input.res
contrib/nitcc/tests/sav/lexer-markers.alt2.input.res
contrib/nitcc/tests/sav/lexer-markers.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt1.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt10.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt2.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt3.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt5.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt6.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt7.input.res
contrib/nitcc/tests/sav/lexer-precedences.alt9.input.res
contrib/nitcc/tests/sav/lr1.input2.res
contrib/nitcc/tests/sav/lr1.input3.res
contrib/nitcc/tests/sav/modif.input3.res
contrib/nitcc/tests/sav/modif.input4.res
contrib/nitcc/tests/sav/not_lalr.input2.res
contrib/nitcc/tests/sav/not_lalr.input3.res
lib/nitcc_runtime.nit

index 6d93316..2925274 100644 (file)
@@ -1,3 +1,4 @@
 NParserError@(1:2-1:3)='x'
 Nodes
   'x'@(1:1-1:2)
+  'x'@(1:2-1:3)
index 32aae2f..2cca9a9 100644 (file)
@@ -2,3 +2,4 @@ NParserError@(1:2-1:6)='abac'
 Nodes
   t_0
     a@(1:1-1:2)='a'
+  b@(1:2-1:6)='abac'
index d0d504b..169786a 100644 (file)
@@ -2,3 +2,4 @@ NParserError@(1:6-1:7)='a'
 Nodes
   t_1
     b@(1:1-1:6)='aabac'
+  a@(1:6-1:7)='a'
index 32aae2f..2cca9a9 100644 (file)
@@ -2,3 +2,4 @@ NParserError@(1:2-1:6)='abac'
 Nodes
   t_0
     a@(1:1-1:2)='a'
+  b@(1:2-1:6)='abac'
index 0f8ad27..ff3d1f9 100644 (file)
@@ -3,3 +3,4 @@ Nodes
   q
     'x'@(1:1-1:2)
   'a'@(1:2-1:3)
+  Eof@(1:3-1:3)=''
index 78af558..44f0f1e 100644 (file)
@@ -5,3 +5,4 @@ Nodes
   'a'@(1:2-1:3)
   q
     'x'@(1:3-1:4)
+  'a'@(1:4-1:5)
index efaf7c5..df3bef9 100644 (file)
@@ -2,3 +2,4 @@ NParserError@(1:3-1:4)='b'
 Nodes
   'a'@(1:1-1:2)
   'b'@(1:2-1:3)
+  'b'@(1:3-1:4)
index c333c96..e5c06f3 100644 (file)
@@ -5,3 +5,4 @@ Nodes
   'c'@(1:3-1:4)
   s
     'd'@(1:4-1:5)
+  'd'@(1:5-1:6)
index 3e8ee7f..b0af0c3 100644 (file)
@@ -3,3 +3,4 @@ Nodes
   'a'@(1:1-1:2)
   x
     'a'@(1:2-1:3)
+  'b'@(1:3-1:4)
index f1f59ea..c657083 100644 (file)
@@ -3,3 +3,4 @@ Nodes
   'b'@(1:1-1:2)
   x
     'a'@(1:2-1:3)
+  'a'@(1:3-1:4)
index 20342e6..26e5f12 100644 (file)
@@ -76,6 +76,7 @@ abstract class Parser
                #print "  expected: {state.error_msg}"
                #print "  node_stack={node_stack.join(", ")}"
                #print "  state_stack={state_stack.join(", ")}"
+               node_stack.add(token)
                var error: NError
                if token isa NLexerError then
                        error = token