When i have tried to update RPGLE Grammar 4.5.3 to Antlr 4.7 getting below error on line no 1346 inside RpgleLexer.g4. Please see the below line no and error.
Line No - 1346 :- CS_FieldLength: [+\\- 0-9][+\\- 0-9][+\\- 0-9][+\\- 0-9][+\\- 0-9] {getCharPositionInLine()==68}?;
error(174): RpgLexer.g4:1346:16: string literals and sets cannot be empty: '\\'..' '
error(174): RpgLexer.g4:1346:26: string literals and sets cannot be empty: '\\'..' '
error(174): RpgLexer.g4:1346:36: string literals and sets cannot be empty: '\\'..' '
error(174): RpgLexer.g4:1346:46: string literals and sets cannot be empty: '\\'..' '
error(174): RpgLexer.g4:1346:56: string literals and sets cannot be empty: '\\'..' '
After fixed this issue [+\\- 0-9] to [+\\ - 0-9] gettting below error or also when i deleted the line 1346 inside the RpgleLexer.g4 getting the same error. please see the below:-
Exception in thread "main" java.lang.RuntimeException: set is empty
at org.antlr.v4.runtime.misc.IntervalSet.getMaxElement(IntervalSet.java:421)
at org.antlr.v4.runtime.atn.ATNSerializer.serialize(ATNSerializer.java:169)
at org.antlr.v4.runtime.atn.ATNSerializer.getSerialized(ATNSerializer.java:601)
at org.antlr.v4.codegen.model.SerializedATN.<init>(SerializedATN.java:22)
at org.antlr.v4.codegen.model.Recognizer.<init>(Recognizer.java:64)
at org.antlr.v4.codegen.model.Lexer.<init>(Lexer.java:27)
at org.antlr.v4.codegen.OutputModelController.lexer(OutputModelController.java:151)
at org.antlr.v4.codegen.OutputModelController.buildLexerOutputModel(OutputModelController.java:104)
at org.antlr.v4.codegen.CodeGenerator.generateLexer(CodeGenerator.java:119)
at org.antlr.v4.codegen.CodeGenPipeline.process(CodeGenPipeline.java:54)
at org.antlr.v4.Tool.processNonCombinedGrammar(Tool.java:404)
at org.antlr.v4.Tool.process(Tool.java:362)
at org.antlr.v4.Tool.processGrammarsOnCommandLine(Tool.java:321)
at org.antlr.v4.Tool.main(Tool.java:168)
Please guide me....