[antlr-interest] C backend problems with 3.1
Jason Nielsen
jdn at math.carleton.ca
Fri Aug 15 14:14:07 PDT 2008
Hello,
I just updated to ANTLR 3.1 and I am having problems with the C backend.
My grammar works with the java backend but with C I get a bunch of errors.
Here is an example of the errors (using the Simple C grammar):
java org.antlr.Tool *.g
ANTLR Parser Generator Version 3.1 (August 12, 2008) 1989-2008
SimpleC.g
Generating SimpleCParser.c
Generating SimpleCParser.h
Generating SimpleCLexer.c
Generating SimpleCLexer.h
SimpleCWalker.g
Generating SimpleCWalker.c
Generating SimpleCWalker.h
gcc -O2 main.c *Lexer.c *Parser.c *Walker.c
/usr/local/antlr/lib/libantlr3c.a -I/usr/local/antlr/include -I
/home/jdn/SimpleC
In file included from main.c:36:
/home/jdn/SimpleC/SimpleCParser.h:95: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:106: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:117: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:128: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:139: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:150: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:161: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:172: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:183: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:194: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:205: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:216: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:227: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:238: error: expected specifier-qualifier-list before ?tree?
/home/jdn/SimpleC/SimpleCParser.h:249: error: expected specifier-qualifier-list before ?tree?
main.c: In function ?main?:
main.c:219: error: ?SimpleCParser_program_return? has no member named ?tree?
main.c:221: error: ?SimpleCParser_program_return? has no member named ?tree?
.
.
.
I was previously using antlr-3.1b2 and this wasn't happening (I haven't
changed anything between the update and put the 3.1 C runtime in the same
location as before).
Jason
More information about the antlr-interest
mailing list