Work around Java's ``code too large'' problem for parser tables.

* data/java.m4 (b4_typed_parser_table, b4_integral_parser_table): New.
* data/lalr1.java (yypact_, yydefact_, yypgoto_, yydefgoto_,
yytable_, yycheck_, yystos_, yytoken_number_, yyr1_, yyr2_, yyrhs_
yyprhs_, yyrline_, yytranslate_table_): Use b4_integral_parser_table.
(yytname_): Use b4_typed_parser_table.
* doc/bison.texinfo (Java Bison Interface): Add note on Java's
``code too large'' error.
This commit is contained in:
Di-an Jan
2008-11-10 14:34:36 +01:00
committed by Paolo Bonzini
parent 1979121c96
commit 09ccae9b18
4 changed files with 52 additions and 67 deletions

View File

@@ -8854,6 +8854,12 @@ if needed. Also, in the future the
@code{%token-table} directive might enable a public interface to
access the token names and codes.
Getting a ``code too large'' error from the Java compiler means the code
hit the 64KB bytecode per method limination of the Java class file.
Try reducing the amount of code in actions and static initializers;
otherwise, report a bug so that the parser skeleton will be improved.
@node Java Semantic Values
@subsection Java Semantic Values
@c - No %union, specify type in %type/%token.