[antlr-interest] Java AST Grammar

Adam Cooney ad_cooney at hotmail.com
Tue Feb 19 15:08:32 PST 2008


Thanks Terrence. I upgraded to 3.0.1 and I believe I installed it correctly. I had slgiht confusion with hte stringtemplate JARs. Anyway, I only mention this because I still get an error and the error is to do with the StringTemplate.
 
C:\antlr-3.0b7\lib\Java\eg\ast>java org.antlr.Tool JavaAST.gANTLR Parser Generator  Version 3.0.1 (August 13, 2007)  1989-2007error(10):  internal error: JavaAST.g : java.lang.IllegalArgumentException: Can't find template tokenRefRuleRootTrack.storg.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:2017)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.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)My current CLASSPATH is:
.;C:\antlr-3.0b7\lib\antlr-3.0.1.jar; C:\antlr-3.0b7\lib\antlr-2.7.7.jar; C:\antlr-3.0b7\lib\stringtemplate-3.0.jar; C:\antlr-3.0b7\lib\stringtemplate-3.1b1.jar; C:\antlr-3.0b7\lib\antlr-runtime-3.0.1.jar;C:\Program Files\Java\jre1.6.0_03\bin; 
 
I've tried: putting stringtemplate-3.1b1 before 3.0, removing 3.1b1 altogether, removing 3.0 altogtehr and putting 3.0 first. Still, everytime I have got this error. Not sure if perhaps env vars aren't updating correctly or if it isn't a problem with those at all. If you (or someone else) has any idea why I get this error, i'd appreciate it.
Thanks Adam


CC: antlr-interest at antlr.orgFrom: parrt at cs.usfca.eduTo: ad_cooney at hotmail.comSubject: Re: [antlr-interest] Java AST GrammarDate: Tue, 19 Feb 2008 14:14:37 -0800 Hi Adam.  Almost certainly this is a 3.0b7 issue. please grab 3.0.1 and try to make it work. 
Ter

On Feb 19, 2008, at 2:12 PM, Adam Cooney wrote:

Hi John, I've been having some trouble running your grammar. I keep getting the following error: C:\antlr-3.0b7\lib\Java\eg\ast>java org.antlr.Tool JavaAST.gANTLR Parser Generator  Version 3.0b7 (April 12, 2007)  1989-2007error(100): JavaAST.g:709:53: syntax error: antlr: JavaAST.g:709:53: unexpectedtoken: ?error(100): JavaAST.g:710:61: syntax error: antlr: JavaAST.g:710:61: unexpectedtoken: ?error(100): JavaAST.g:711:51: syntax error: antlr: JavaAST.g:711:51: unexpectedtoken: ?error(100): JavaAST.g:712:58: syntax error: antlr: JavaAST.g:712:58: unexpectedtoken: ?error(100): JavaAST.g:0:0: syntax error: assign.types: <AST>:0:0: unexpected end of subtreeerror(10):  internal error: JavaAST.g : java.lang.ClassCastException: antlr.ASTNULLType cannot be cast to org.antlr.tool.GrammarASTorg.antlr.tool.AssignTokenTypesWalker.block(AssignTokenTypesWalker.java:1215)org.antlr.tool.AssignTokenTypesWalker.rule(AssignTokenTypesWalker.java:1030)org.antlr.tool.AssignTokenTypesWalker.rules(AssignTokenTypesWalker.java:610)org.antlr.tool.AssignTokenTypesWalker.grammarSpec(AssignTokenTypesWalker.java:492)org.antlr.tool.AssignTokenTypesWalker.grammar(AssignTokenTypesWalker.java:363)org.antlr.tool.Grammar.setGrammarContent(Grammar.java:539)org.antlr.tool.Grammar.<init>(Grammar.java:448)org.antlr.Tool.getGrammar(Tool.java:331)org.antlr.Tool.process(Tool.java:267)org.antlr.Tool.main(Tool.java:70) Any idea what could be causing it? I'm pretty new to ANTLR, but the stringtemplate and antlr JARs are in the classpath, and I ran the example treeparsers fine. Could it be due to using antlr-3.0b7 rather than antlr-3.0.1? I was using 3.0.1 but after installing it and resetting the classpaths for some reason i got a Java classloader error even after restarting the computer, and so I just reverted back to this one.


CC: john at jacelridge.com; antlr-interest at antlr.orgFrom: john at jacelridge.comTo: ad_cooney at hotmail.comSubject: Re: [antlr-interest] Java AST GrammarDate: Tue, 12 Feb 2008 17:41:05 -0500I have been working on a Java grammar that produces an AST; and a companion tree grammar that produces equivalent Java code from an AST.  This is still a work-in-progress, but you're welcome to what I have. 

Please let me know if you run into any problems with this, as I'm trying to make it work nicely.

Peace
- John




She said what? About who? Shameful celebrity quotes on Search Star!
_________________________________________________________________
Get Hotmail on your mobile, text MSN to 63463!
http://mobile.uk.msn.com/pc/mail.aspx
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.antlr.org/pipermail/antlr-interest/attachments/20080219/d1714d9f/attachment.html 


More information about the antlr-interest mailing list