[antlr-interest] Please Help: Simple C Parsing Problem
JonFroehlich
jfroehli at ics.uci.edu
Sun Jul 25 02:28:56 PDT 2004
I'm using the John Mitchell and Monty Zukowski GNU C Grammar from
antlr.org. I can run the test input .c files fine; however, when I
create my own simple tests, the parser fails.
For example, testfile.c contains two lines
#include <stdio.h>
FILE *filePtr;
When I parse this, I get the following error:
ANTLR Parsing Error: line 2:26: unexpected token: * token name:STAR
line 2:26: unexpected token: *
at GnuCParser.initDecl(GnuCParser.java:3454)
at GnuCParser.initDeclList(GnuCParser.java:1107)
at GnuCParser.typelessDeclaration(GnuCParser.java:832)
at GnuCParser.externalDef(GnuCParser.java:496)
at GnuCParser.externalList(GnuCParser.java:233)
at GnuCParser.translationUnit(GnuCParser.java:193)
at Test.main(Test.java:55)
So, I realize the issue revolves around the notion of "typeless
declaration." E.g. if we change testfile.c to read the following,
there is no problem.
#include <stdio.h>
int *filePtr;
How do I change the grammar file (if this is even necessary) to be
able to detect new types so that a non-primitive type variable
declaration, like FILE, is treated the same way as an int
declaration. This seems like such an easy thing but unfortunately I
can't figure it out.
j
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/antlr-interest/
<*> To unsubscribe from this group, send an email to:
antlr-interest-unsubscribe at yahoogroups.com
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
More information about the antlr-interest
mailing list