[antlr-interest] Problems getting ANTLR lexer to distinguish ML comments from JavaDoc comments
lfastrup
lfastrup at yahoo.com
Mon Jul 1 09:23:34 PDT 2002
Hi,
I writing a small Java parser using ANTLR 2.7.1. I have based it on
the java.g for the Java 1.3 grammer. But I also need to parse all
JavaDoc comments. But I hit a wall when trying to get the JavaLexer to
skip normal multiline (/* ... */) comments but not JavaDoc comments
(/** .... */). Here is an excerpt from my java.g file where I have
tried to implement this separation:
ML_COMMENT
:
"/*" ~'*'
( // see comments on NEWLINE
options {
generateAmbigWarnings=false;
}
:
{ LA(2)!='/' }? '*'
| NEWLINE
| ~('*'|'\n'|'\r')
)*
"*/"
{ $setType(Token.SKIP); }
;*/
JAVADOC_OPEN
: "/**" { Main.selector.push("doclexer"); }
;
It compiles ok, but when I run it I get the following error message:
Exception in thread "main" java.lang.ClassFormatError: JavaLexer (Code
of a method longer than 65535 bytes)
Do you know this bug or just a smarter way to solve my problem in the
lexer?
Cheers
Lars Fastrup
Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
More information about the antlr-interest
mailing list