1)
At first I rewrited this gramma for C target. I tried to generate C code using antlr 3.3, but got exception : (lexer is ok, but parser failed)
error(10): internal error: PLSQLParser.g : java.lang.NullPointerException
org.antlr.codegen.Target.getTokenTypeAsTargetLabel(Target.java:150)
org.antlr.codegen.CodeGenerator.getTokenTypeAsTargetLabel(CodeGenerator.java:886)
org.antlr.codegen.ACyclicDFACodeGenerator.walkFixedDFAGeneratingStateMachine(ACyclicDFACodeGenerator.java:120)
org.antlr.codegen.ACyclicDFACodeGenerator.genFixedLookaheadDecision(ACyclicDFACodeGenerator.java:48)
org.antlr.codegen.CodeGenerator.genLookaheadDecision(CodeGenerator.java:635)
org.antlr.grammar.v3.CodeGenTreeWalker.block(CodeGenTreeWalker.java:2754)
org.antlr.grammar.v3.CodeGenTreeWalker.ebnf(CodeGenTreeWalker.java:4650)
org.antlr.grammar.v3.CodeGenTreeWalker.element(CodeGenTreeWalker.java:3821)
org.antlr.grammar.v3.CodeGenTreeWalker.alternative(CodeGenTreeWalker.java:3576)
org.antlr.grammar.v3.CodeGenTreeWalker.block(CodeGenTreeWalker.java:2984)
org.antlr.grammar.v3.CodeGenTreeWalker.rule(CodeGenTreeWalker.java:2285)
org.antlr.grammar.v3.CodeGenTreeWalker.rules(CodeGenTreeWalker.java:1488)
org.antlr.grammar.v3.CodeGenTreeWalker.grammarSpec(CodeGenTreeWalker.java:1405)
org.antlr.grammar.v3.CodeGenTreeWalker.grammar_(CodeGenTreeWalker.java:492)
org.antlr.codegen.CodeGenerator.genRecognizer(CodeGenerator.java:415)
org.antlr.Tool.generateRecognizer(Tool.java:696)
org.antlr.Tool.process(Tool.java:509)
org.antlr.Tool.main(Tool.java:98)
2)
After first fail, I took original gramma for java and changed only option about target language to C target. And got the same exception in antlr.
Maybe someone know what's the problem?
PS: tried this operations with antlr 3.5 and got the same problem.