[antlr-interest] Another update to Honey Badger
Peter Boughton
boughtonp at gmail.com
Sat Jan 21 17:47:04 PST 2012
These native commands definitely help readability.
Unfortunately, it seems popMode isn't working - trying to use it
results in an NPE:
Exception in thread "main" java.lang.NullPointerException
at org.antlr.v4.automata.LexerATNFactory.lexerCommand(LexerATNFactory.java:143)
at org.antlr.v4.parse.ATNBuilder.lexerCommand(ATNBuilder.java:762)
at org.antlr.v4.parse.ATNBuilder.lexerCommands(ATNBuilder.java:665)
at org.antlr.v4.parse.ATNBuilder.alternative(ATNBuilder.java:540)
at org.antlr.v4.parse.ATNBuilder.ruleBlock(ATNBuilder.java:292)
at org.antlr.v4.automata.ParserATNFactory._createATN(ParserATNFactory.java:127)
at org.antlr.v4.automata.LexerATNFactory.createATN(LexerATNFactory.java:83)
at org.antlr.v4.Tool.processNonCombinedGrammar(Tool.java:303)
at org.antlr.v4.Tool.process(Tool.java:284)
at org.antlr.v4.Tool.processGrammarsOnCommandLine(Tool.java:248)
at org.antlr.v4.Tool.main(Tool.java:146)
Java Result: 1
The old style still works, and both pushMode(MODENAME) and skip are working.
The error above is the same you get with an invalid command, for
example by adding "->purple;" to a rule.
Possible cause in org/antlr/v4/tool/templates/codegen/Java/Java.stg -
line 441 has LexerPopMode instead of LexerPopModeCommand ?
More information about the antlr-interest
mailing list