[antlr-interest] Grammar generation results in exception

Johannes Luber jaluber at gmx.de
Mon Jun 25 05:02:20 PDT 2007


Hello!

I've been working on a ANTLR3-to-RelaxNG converter based on Terence's
ANTLRv3.g. When I want to generate the corresponding C#-files, I receive
following output:

ANTLR Parser Generator  Version 3.0 (May 17, 2007)  1989-2007
warning(105): ANTLR3ToRelaxNG.g:155:4: no lexer rule corresponding to
token: DOC_COMMENT
warning(105): ANTLR3ToRelaxNG.g:299:19: no lexer rule corresponding to
token: SEMPRED
warning(105): ANTLR3ToRelaxNG.g:271:20: no lexer rule corresponding to
token: RANGE
warning(105): ANTLR3ToRelaxNG.g:235:6: no lexer rule corresponding to
token: SEMPRED
warning(105): ANTLR3ToRelaxNG.g:93:9: no lexer rule corresponding to
token: DOC_COMMENT
warning(200): ANTLR3ToRelaxNG.g:312:7: Decision can match input such as
"TOKEN_REF '(' TOKEN_REF '='" using multiple alternatives: 1, 2
As a result, alternative(s) 2 were disabled for that input
error(10):  internal error: ANTLR3ToRelaxNG.g :
java.lang.IllegalArgumentException: Can't find template
tokenRefRuleRootTrack.st
org.antlr.stringtemplate.StringTemplateGroup.lookupTemplate(StringTemplateGroup.java:485)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(StringTemplateGroup.java:372)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(StringTemplateGroup.java:384)
org.antlr.stringtemplate.StringTemplateGroup.lookupTemplate(StringTemplateGroup.java:464)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(StringTemplateGroup.java:372)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(StringTemplateGroup.java:384)
org.antlr.codegen.CodeGenTreeWalker.getTokenElementST(CodeGenTreeWalker.java:160)
org.antlr.codegen.CodeGenTreeWalker.atom(CodeGenTreeWalker.java:1992)
org.antlr.codegen.CodeGenTreeWalker.element(CodeGenTreeWalker.java:1641)
org.antlr.codegen.CodeGenTreeWalker.element(CodeGenTreeWalker.java:1478)
org.antlr.codegen.CodeGenTreeWalker.alternative(CodeGenTreeWalker.java:1252)
org.antlr.codegen.CodeGenTreeWalker.block(CodeGenTreeWalker.java:1037)
org.antlr.codegen.CodeGenTreeWalker.ebnf(CodeGenTreeWalker.java:1780)
org.antlr.codegen.CodeGenTreeWalker.element(CodeGenTreeWalker.java:1637)
org.antlr.codegen.CodeGenTreeWalker.alternative(CodeGenTreeWalker.java:1252)
org.antlr.codegen.CodeGenTreeWalker.block(CodeGenTreeWalker.java:1037)
org.antlr.codegen.CodeGenTreeWalker.rule(CodeGenTreeWalker.java:753)
org.antlr.codegen.CodeGenTreeWalker.rules(CodeGenTreeWalker.java:544)
org.antlr.codegen.CodeGenTreeWalker.grammarSpec(CodeGenTreeWalker.java:486)
org.antlr.codegen.CodeGenTreeWalker.grammar(CodeGenTreeWalker.java:333)
org.antlr.codegen.CodeGenerator.genRecognizer(CodeGenerator.java:406)
org.antlr.Tool.processGrammar(Tool.java:347)
org.antlr.Tool.process(Tool.java:268)
org.antlr.Tool.main(Tool.java:70)

Lies the error with mine code or is it an ANTLR bug? The file is
attached. And if I didn't change the license text correctly, please let
me know!

Best regards,
Johannes Luber
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: ANTLR3ToRelaxNG.g
Url: http://www.antlr.org/pipermail/antlr-interest/attachments/20070625/4ec15582/attachment-0001.pl 


More information about the antlr-interest mailing list