diff --git a/src/main/java/org/sablecc/sablecc/parser/Parser.java b/src/main/java/org/sablecc/sablecc/parser/Parser.java index eb9f70dcc3aa6ec895c8d3df3e8d7ff4a6029a00..25f75335662a220534fa87cdf95ee96e381f0a48 100644 --- a/src/main/java/org/sablecc/sablecc/parser/Parser.java +++ b/src/main/java/org/sablecc/sablecc/parser/Parser.java @@ -187,28 +187,29 @@ public class Parser implements IParser this.last_token = this.lexer.peek(); int index = index(this.lexer.peek()); - int action = Parser.actionTable[state()][0][1]; - int destination = Parser.actionTable[state()][0][2]; + int state = state(); + int action = Parser.actionTable[state][0][1]; + int destination = Parser.actionTable[state][0][2]; int low = 1; - int high = Parser.actionTable[state()].length - 1; + int high = Parser.actionTable[state].length - 1; while(low <= high) { int middle = (low + high) >>> 1; - if(index < Parser.actionTable[state()][middle][0]) + if(index < Parser.actionTable[state][middle][0]) { high = middle - 1; } - else if(index > Parser.actionTable[state()][middle][0]) + else if(index > Parser.actionTable[state][middle][0]) { low = middle + 1; } else { - action = Parser.actionTable[state()][middle][1]; - destination = Parser.actionTable[state()][middle][2]; + action = Parser.actionTable[state][middle][1]; + destination = Parser.actionTable[state][middle][2]; break; } } diff --git a/src/main/resources/org/sablecc/sablecc/parser.txt b/src/main/resources/org/sablecc/sablecc/parser.txt index 013a568a09ccdcb37f0c725cf05a71d0378643fd..b90e4a60759b854a2130b93a6ebbb17ccb2a4d2f 100644 --- a/src/main/resources/org/sablecc/sablecc/parser.txt +++ b/src/main/resources/org/sablecc/sablecc/parser.txt @@ -221,28 +221,29 @@ Macro:ParserCommon this.last_token = this.lexer.peek(); int index = index(this.lexer.peek()); - int action = Parser.actionTable[state()][0][1]; - int destination = Parser.actionTable[state()][0][2]; + int state = state(); + int action = Parser.actionTable[state][0][1]; + int destination = Parser.actionTable[state][0][2]; int low = 1; - int high = Parser.actionTable[state()].length - 1; + int high = Parser.actionTable[state].length - 1; while(low <= high) { int middle = (low + high) >>> 1; - if(index < Parser.actionTable[state()][middle][0]) + if(index < Parser.actionTable[state][middle][0]) { high = middle - 1; } - else if(index > Parser.actionTable[state()][middle][0]) + else if(index > Parser.actionTable[state][middle][0]) { low = middle + 1; } else { - action = Parser.actionTable[state()][middle][1]; - destination = Parser.actionTable[state()][middle][2]; + action = Parser.actionTable[state][middle][1]; + destination = Parser.actionTable[state][middle][2]; break; } }