[antlr-interest] lexer Code too large
"Paul Bouché (NSN)"
paul.bouche at nsn.com
Tue Feb 17 06:25:51 PST 2009
Hi,
I have a rather complex lexer and I arrived at a state where I cannot
reduce the rules anymore. When I try to compile the lexer I get the
following exception:
StringPropsLexer.java:3444: code too large
public int specialStateTransition(int s, IntStream _input) throws
NoViableAltException {
^
1 error
I added backward compatibility for unquoted strings which complicates
the lexer obviously. Is there a way I can avoid this problem? The rule
in questions this:
USTRING : /* backward compatibility... added, should support all
simulation props semantics
* the other tokens are listed here to ensure that the last
match-everything alternative is disabled for
* tokens that should be matched as they are if they are by
themselfes, i.e.
* i = 3 is still matched as a number and not as an ustring
* k = ::1.2.3.4 should still be matched as an ip not as a
ustring etc. */
{foundFirstEquals}?=>
( NUMERIC ~('\.' | DIGIT_ | DL_ | '\n' | CB_ | CL_ | ')') USTRINGEND_
| USTRINGBEGIN_ USTRINGEND_
)
{ foundFirstEquals = false; }
;
I am using ANTLR 3.11 / ANTLRWorks 1.2.2.
Thanks,
Paul
--
Paul Bouché
Voice: +49 30 590080-1284
Nokia Siemens Networks GmbH & Co. KG, An den Treptowers 1, 12435 Berlin, Germany
Sitz der Gesellschaft: München / Registered office: Munich
Registergericht: München / Commercial registry: Munich, HRA 88537
WEEE-Reg.-Nr.: DE 52984304
Persönlich haftende Gesellschafterin / General Partner: Nokia Siemens Networks Management GmbH
Geschäftsleitung / Board of Directors: Lydia Sommer, Olaf Horsthemke
Vorsitzender des Aufsichtsrats / Chairman of supervisory board: Lauri Kivinen
Sitz der Gesellschaft: München / Registered office: Munich
Registergericht: München / Commercial registry: Munich, HRB 163416
More information about the antlr-interest
mailing list