mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Prepare the convergence bw C style and Java table generation.
* data/bison.m4 (b4_tables_map, b4_tables_declare) (b4_tables_define): Rename as... (b4_integral_parser_tables_map, b4_parser_tables_declare) (b4_parser_tables_define): these. * data/c.m4 (b4_table_define): Rename as... (b4_integral_parser_table_define): this. * data/lalr1.cc: Adjust. (b4_table_define, b4_table_declare): Rename as... (b4_integral_parser_table_define) (b4_integral_parser_table_declare): these. (yyrline_): Move the comment where it is actually used. * data/yacc.c: Adjust. (yyrline): Use b4_integral_parser_table_define.
This commit is contained in:
17
ChangeLog
17
ChangeLog
@@ -1,3 +1,20 @@
|
||||
2008-11-26 Akim Demaille <demaille@gostai.com>
|
||||
|
||||
Prepare the convergence bw C style and Java table generation.
|
||||
* data/bison.m4 (b4_tables_map, b4_tables_declare)
|
||||
(b4_tables_define): Rename as...
|
||||
(b4_integral_parser_tables_map, b4_parser_tables_declare)
|
||||
(b4_parser_tables_define): these.
|
||||
* data/c.m4 (b4_table_define): Rename as...
|
||||
(b4_integral_parser_table_define): this.
|
||||
* data/lalr1.cc: Adjust.
|
||||
(b4_table_define, b4_table_declare): Rename as...
|
||||
(b4_integral_parser_table_define)
|
||||
(b4_integral_parser_table_declare): these.
|
||||
(yyrline_): Move the comment where it is actually used.
|
||||
* data/yacc.c: Adjust.
|
||||
(yyrline): Use b4_integral_parser_table_define.
|
||||
|
||||
2008-11-26 Akim Demaille <demaille@gostai.com>
|
||||
|
||||
Regen.
|
||||
|
||||
@@ -245,11 +245,11 @@ m4_define([_b4_args],
|
||||
|
||||
|
||||
|
||||
# b4_tables_map(MACRO)
|
||||
# --------------------
|
||||
# b4_integral_parser_tables_map(MACRO)
|
||||
# -------------------------------------
|
||||
# Map MACRO on all the integral tables. MACRO is expected to have
|
||||
# the signature MACRO(TABLE-NAME, CONTENT, COMMENT).
|
||||
m4_define([b4_tables_map],
|
||||
m4_define([b4_integral_parser_tables_map],
|
||||
[$1([pact], [b4_pact],
|
||||
[[YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
|
||||
STATE-NUM.]])
|
||||
@@ -283,15 +283,15 @@ $1([r2], [b4_r2],
|
||||
])
|
||||
|
||||
|
||||
# b4_tables_declare
|
||||
# b4_tables_define
|
||||
# -----------------
|
||||
# b4_parser_tables_declare
|
||||
# b4_parser_tables_define
|
||||
# ------------------------
|
||||
# Define/declare the (deterministic) parser tables.
|
||||
m4_define([b4_tables_declare],
|
||||
[b4_tables_map([b4_table_declare])])
|
||||
m4_define([b4_parser_tables_declare],
|
||||
[b4_integral_parser_tables_map([b4_integral_parser_table_declare])])
|
||||
|
||||
m4_define([b4_tables_define],
|
||||
[b4_tables_map([b4_table_define])])
|
||||
m4_define([b4_parser_tables_define],
|
||||
[b4_integral_parser_tables_map([b4_integral_parser_table_define])])
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -169,10 +169,10 @@ m4_define([b4_int_type_for],
|
||||
m4_define([b4_null], [0])
|
||||
|
||||
|
||||
# b4_table_define(TABLE-NAME, CONTENT, COMMENT)
|
||||
# ---------------------------------------------
|
||||
# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT)
|
||||
# -------------------------------------------------------------
|
||||
# Define "yy<TABLE-NAME>" which contents is CONTENT.
|
||||
m4_define([b4_table_define],
|
||||
m4_define([b4_integral_parser_table_define],
|
||||
[m4_ifval([$3], [b4_c_comment([$3], [ ])
|
||||
])dnl
|
||||
static const b4_int_type_for([$2]) yy$1[[]] =
|
||||
|
||||
@@ -19,19 +19,19 @@
|
||||
m4_include(b4_pkgdatadir/[c++.m4])
|
||||
|
||||
|
||||
# b4_table_declare(TABLE-NAME, CONTENT, COMMENT)
|
||||
# ----------------------------------------------
|
||||
# b4_integral_parser_table_declare(TABLE-NAME, CONTENT, COMMENT)
|
||||
# --------------------------------------------------------------
|
||||
# Declare "parser::yy<TABLE-NAME>_" which contents is CONTENT.
|
||||
m4_define([b4_table_declare],
|
||||
m4_define([b4_integral_parser_table_declare],
|
||||
[m4_ifval([$3], [b4_c_comment([$3], [ ])
|
||||
])dnl
|
||||
static const b4_int_type_for([$2]) yy$1_[[]];dnl
|
||||
])
|
||||
|
||||
# b4_table_define(TABLE-NAME, CONTENT, COMMENT)
|
||||
# b4_integral_parser_table_define(TABLE-NAME, CONTENT, COMMENT)
|
||||
# ---------------------------------------------
|
||||
# Define "parser::yy<TABLE-NAME>_" which contents is CONTENT.
|
||||
m4_define([b4_table_define],
|
||||
m4_define([b4_integral_parser_table_define],
|
||||
[ const b4_int_type_for([$2])
|
||||
b4_parser_class_name::yy$1_[[]] =
|
||||
{
|
||||
@@ -676,7 +676,7 @@ m4_ifdef([b4_stype],
|
||||
static const ]b4_int_type(b4_table_ninf, b4_table_ninf)[ yytable_ninf_;
|
||||
|
||||
/* Tables. */
|
||||
]b4_tables_declare[
|
||||
]b4_parser_tables_declare[
|
||||
|
||||
#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
|
||||
/// For a symbol, its name in clear.
|
||||
@@ -687,7 +687,8 @@ m4_ifdef([b4_stype],
|
||||
static std::string yytnamerr_ (const char *n);])[
|
||||
|
||||
#if YYDEBUG
|
||||
]b4_table_declare([rline], [b4_rline])[
|
||||
]b4_integral_parser_table_declare([rline], [b4_rline],
|
||||
[YYRLINE[YYN] -- Source line where rule number YYN was defined.])[
|
||||
/// Report on the debug stream that the rule \a r is going to be reduced.
|
||||
virtual void yy_reduce_print_ (int r);
|
||||
/// Print the state stack on the debug stream.
|
||||
@@ -1499,7 +1500,7 @@ b4_error_verbose_if([int yystate, int yytoken],
|
||||
|
||||
const ]b4_int_type(b4_table_ninf, b4_table_ninf) b4_parser_class_name::yytable_ninf_ = b4_table_ninf[;
|
||||
|
||||
]b4_tables_define[
|
||||
]b4_parser_tables_define[
|
||||
|
||||
#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
|
||||
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
|
||||
@@ -1512,8 +1513,7 @@ b4_error_verbose_if([int yystate, int yytoken],
|
||||
#endif
|
||||
|
||||
#if YYDEBUG
|
||||
]b4_table_define([rline], [b4_rline],
|
||||
[YYRLINE[YYN] -- Source line where rule number YYN was defined.])[
|
||||
]b4_integral_parser_table_define([rline], [b4_rline])[
|
||||
|
||||
// Print the state stack on the debug stream.
|
||||
void
|
||||
|
||||
@@ -501,11 +501,8 @@ static const ]b4_int_type_for([b4_translate])[ yytranslate[] =
|
||||
};
|
||||
|
||||
#if YYDEBUG
|
||||
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
|
||||
static const ]b4_int_type_for([b4_rline])[ yyrline[] =
|
||||
{
|
||||
]b4_rline[
|
||||
};
|
||||
]b4_integral_parser_table_define([rline], [b4_rline],
|
||||
[YYRLINE[YYN] -- Source line where rule number YYN was defined.])[
|
||||
#endif
|
||||
|
||||
#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
|
||||
@@ -530,7 +527,7 @@ static const ]b4_int_type_for([b4_toknum])[ yytoknum[] =
|
||||
|
||||
#define YYTABLE_NINF ]b4_table_ninf[
|
||||
|
||||
]b4_tables_define[
|
||||
]b4_parser_tables_define[
|
||||
|
||||
#define yyerrok (yyerrstatus = 0)
|
||||
#define yyclearin (yychar = YYEMPTY)
|
||||
|
||||
Reference in New Issue
Block a user