mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
* src/output.c (froms, tos): Are state_number_t.
(save_column): sp, sp1, and sp2 are state_number_t. (prepare): Rename `final' as `final_state_number', `nnts' as `nterms_number', `nrules' as `rules_number', `nstates' as `states_number', and `ntokens' as `tokens_number'. Remove `nsym', unused. * data/yacc.c, data/glr.c, data/lalr1.cc: Adjust. * data/lalr1.cc (nsym_): Remove, unused.
This commit is contained in:
11
ChangeLog
11
ChangeLog
@@ -1,3 +1,14 @@
|
|||||||
|
2002-07-03 Akim Demaille <akim@epita.fr>
|
||||||
|
|
||||||
|
* src/output.c (froms, tos): Are state_number_t.
|
||||||
|
(save_column): sp, sp1, and sp2 are state_number_t.
|
||||||
|
(prepare): Rename `final' as `final_state_number', `nnts' as
|
||||||
|
`nterms_number', `nrules' as `rules_number', `nstates' as
|
||||||
|
`states_number', and `ntokens' as `tokens_number'. Remove `nsym',
|
||||||
|
unused.
|
||||||
|
* data/yacc.c, data/glr.c, data/lalr1.cc: Adjust.
|
||||||
|
* data/lalr1.cc (nsym_): Remove, unused.
|
||||||
|
|
||||||
2002-07-03 Akim Demaille <akim@epita.fr>
|
2002-07-03 Akim Demaille <akim@epita.fr>
|
||||||
|
|
||||||
* src/lalr.h, src/lalr.c (goto_number_t): New.
|
* src/lalr.h, src/lalr.c (goto_number_t): New.
|
||||||
|
|||||||
10
data/glr.c
10
data/glr.c
@@ -218,18 +218,18 @@ static YYLTYPE yyloc_default;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* YYFINAL -- State number of the termination state. */
|
/* YYFINAL -- State number of the termination state. */
|
||||||
#define YYFINAL ]b4_final[
|
#define YYFINAL ]b4_final_state_number[
|
||||||
#define YYFLAG ]b4_flag[
|
#define YYFLAG ]b4_flag[
|
||||||
#define YYLAST ]b4_last[
|
#define YYLAST ]b4_last[
|
||||||
|
|
||||||
/* YYNTOKENS -- Number of terminals. */
|
/* YYNTOKENS -- Number of terminals. */
|
||||||
#define YYNTOKENS ]b4_ntokens[
|
#define YYNTOKENS ]b4_tokens_number[
|
||||||
/* YYNNTS -- Number of nonterminals. */
|
/* YYNNTS -- Number of nonterminals. */
|
||||||
#define YYNNTS ]b4_nnts[
|
#define YYNNTS ]b4_nterms_number[
|
||||||
/* YYNRULES -- Number of rules. */
|
/* YYNRULES -- Number of rules. */
|
||||||
#define YYNRULES ]b4_nrules[
|
#define YYNRULES ]b4_rules_number[
|
||||||
/* YYNRULES -- Number of states. */
|
/* YYNRULES -- Number of states. */
|
||||||
#define YYNSTATES ]b4_nstates[
|
#define YYNSTATES ]b4_states_number[
|
||||||
/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
|
/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
|
||||||
#define YYMAXRHS ]b4_r2_max[
|
#define YYMAXRHS ]b4_r2_max[
|
||||||
|
|
||||||
|
|||||||
@@ -253,7 +253,6 @@ namespace yy
|
|||||||
static const int last_;
|
static const int last_;
|
||||||
static const int flag_;
|
static const int flag_;
|
||||||
static const int nnts_;
|
static const int nnts_;
|
||||||
static const int nsym_;
|
|
||||||
static const int empty_;
|
static const int empty_;
|
||||||
static const int final_;
|
static const int final_;
|
||||||
static const int terror_;
|
static const int terror_;
|
||||||
@@ -759,13 +758,12 @@ yy::b4_name::translate_ (int token)
|
|||||||
const int yy::b4_name::eof_ = 0;
|
const int yy::b4_name::eof_ = 0;
|
||||||
const int yy::b4_name::last_ = b4_last;
|
const int yy::b4_name::last_ = b4_last;
|
||||||
const int yy::b4_name::flag_ = b4_flag;
|
const int yy::b4_name::flag_ = b4_flag;
|
||||||
const int yy::b4_name::nnts_ = b4_nnts;
|
const int yy::b4_name::nnts_ = b4_nterms_number;
|
||||||
const int yy::b4_name::nsym_ = b4_nsym;
|
|
||||||
const int yy::b4_name::empty_ = -2;
|
const int yy::b4_name::empty_ = -2;
|
||||||
const int yy::b4_name::final_ = b4_final;
|
const int yy::b4_name::final_ = b4_final_state_number;
|
||||||
const int yy::b4_name::terror_ = 1;
|
const int yy::b4_name::terror_ = 1;
|
||||||
const int yy::b4_name::errcode_ = 256;
|
const int yy::b4_name::errcode_ = 256;
|
||||||
const int yy::b4_name::ntokens_ = b4_ntokens;
|
const int yy::b4_name::ntokens_ = b4_tokens_number;
|
||||||
const int yy::b4_name::initdepth_ = b4_initdepth;
|
const int yy::b4_name::initdepth_ = b4_initdepth;
|
||||||
|
|
||||||
const unsigned yy::b4_name::user_token_number_max_ = b4_user_token_number_max;
|
const unsigned yy::b4_name::user_token_number_max_ = b4_user_token_number_max;
|
||||||
|
|||||||
10
data/yacc.c
10
data/yacc.c
@@ -302,18 +302,18 @@ b4_location_if(
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* YYFINAL -- State number of the termination state. */
|
/* YYFINAL -- State number of the termination state. */
|
||||||
#define YYFINAL b4_final
|
#define YYFINAL b4_final_state_number
|
||||||
#define YYFLAG b4_flag
|
#define YYFLAG b4_flag
|
||||||
#define YYLAST b4_last
|
#define YYLAST b4_last
|
||||||
|
|
||||||
/* YYNTOKENS -- Number of terminals. */
|
/* YYNTOKENS -- Number of terminals. */
|
||||||
#define YYNTOKENS b4_ntokens
|
#define YYNTOKENS b4_tokens_number
|
||||||
/* YYNNTS -- Number of nonterminals. */
|
/* YYNNTS -- Number of nonterminals. */
|
||||||
#define YYNNTS b4_nnts
|
#define YYNNTS b4_nterms_number
|
||||||
/* YYNRULES -- Number of rules. */
|
/* YYNRULES -- Number of rules. */
|
||||||
#define YYNRULES b4_nrules
|
#define YYNRULES b4_rules_number
|
||||||
/* YYNRULES -- Number of states. */
|
/* YYNRULES -- Number of states. */
|
||||||
#define YYNSTATES b4_nstates
|
#define YYNSTATES b4_states_number
|
||||||
|
|
||||||
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
|
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
|
||||||
#define YYUNDEFTOK b4_undef_token_number
|
#define YYUNDEFTOK b4_undef_token_number
|
||||||
|
|||||||
67
src/output.c
67
src/output.c
@@ -20,17 +20,15 @@
|
|||||||
02111-1307, USA. */
|
02111-1307, USA. */
|
||||||
|
|
||||||
|
|
||||||
/* The parser tables consist of these tables. Marked ones needed only
|
/* The parser tables consist of these tables.
|
||||||
for the semantic parser. Double marked are output only if switches
|
|
||||||
are set.
|
|
||||||
|
|
||||||
YYTRANSLATE = vector mapping yylex's token numbers into bison's
|
YYTRANSLATE = vector mapping yylex's token numbers into bison's
|
||||||
token numbers.
|
token numbers.
|
||||||
|
|
||||||
++ YYTNAME = vector of string-names indexed by bison token number.
|
YYTNAME = vector of string-names indexed by bison token number.
|
||||||
|
|
||||||
++ YYTOKNUM = vector of yylex token numbers corresponding to
|
YYTOKNUM = vector of yylex token numbers corresponding to entries
|
||||||
entries in YYTNAME.
|
in YYTNAME.
|
||||||
|
|
||||||
YYRLINE = vector of line-numbers of all rules. For yydebug
|
YYRLINE = vector of line-numbers of all rules. For yydebug
|
||||||
printouts.
|
printouts.
|
||||||
@@ -44,8 +42,7 @@
|
|||||||
|
|
||||||
YYR2[R] = number of symbols composing right hand side of rule R.
|
YYR2[R] = number of symbols composing right hand side of rule R.
|
||||||
|
|
||||||
+ YYSTOS[S] = the symbol number of the symbol that leads to state
|
YYSTOS[S] = the symbol number of the symbol that leads to state S.
|
||||||
S.
|
|
||||||
|
|
||||||
YYDEFACT[S] = default rule to reduce with in state s, when YYTABLE
|
YYDEFACT[S] = default rule to reduce with in state s, when YYTABLE
|
||||||
doesn't specify something else to do. Zero means the default is an
|
doesn't specify something else to do. Zero means the default is an
|
||||||
@@ -109,8 +106,8 @@ void m4_invoke PARAMS ((const char *definitions));
|
|||||||
|
|
||||||
static int nvectors;
|
static int nvectors;
|
||||||
static int nentries;
|
static int nentries;
|
||||||
static short **froms = NULL;
|
static state_number_t **froms = NULL;
|
||||||
static short **tos = NULL;
|
static state_number_t **tos = NULL;
|
||||||
static unsigned int **conflict_tos = NULL;
|
static unsigned int **conflict_tos = NULL;
|
||||||
static short *tally = NULL;
|
static short *tally = NULL;
|
||||||
static short *width = NULL;
|
static short *width = NULL;
|
||||||
@@ -790,14 +787,14 @@ static void
|
|||||||
save_column (symbol_number_t symbol, state_number_t default_state)
|
save_column (symbol_number_t symbol, state_number_t default_state)
|
||||||
{
|
{
|
||||||
int i;
|
int i;
|
||||||
short *sp;
|
state_number_t *sp;
|
||||||
short *sp1;
|
state_number_t *sp1;
|
||||||
short *sp2;
|
state_number_t *sp2;
|
||||||
int count;
|
int count;
|
||||||
int symno = symbol - ntokens + state_number_as_int (nstates);
|
int symno = symbol - ntokens + state_number_as_int (nstates);
|
||||||
|
|
||||||
int begin = goto_map[symbol];
|
goto_number_t begin = goto_map[symbol];
|
||||||
int end = goto_map[symbol + 1];
|
goto_number_t end = goto_map[symbol + 1];
|
||||||
|
|
||||||
count = 0;
|
count = 0;
|
||||||
for (i = begin; i < end; i++)
|
for (i = begin; i < end; i++)
|
||||||
@@ -827,8 +824,8 @@ default_goto (symbol_number_t symbol)
|
|||||||
{
|
{
|
||||||
state_number_t s;
|
state_number_t s;
|
||||||
int i;
|
int i;
|
||||||
int m = goto_map[symbol];
|
goto_number_t m = goto_map[symbol];
|
||||||
int n = goto_map[symbol + 1];
|
goto_number_t n = goto_map[symbol + 1];
|
||||||
state_number_t default_state = (state_number_t) -1;
|
state_number_t default_state = (state_number_t) -1;
|
||||||
int max = 0;
|
int max = 0;
|
||||||
|
|
||||||
@@ -1214,33 +1211,37 @@ output_skeleton (void)
|
|||||||
static void
|
static void
|
||||||
prepare (void)
|
prepare (void)
|
||||||
{
|
{
|
||||||
MUSCLE_INSERT_INT ("last", high);
|
/* Flags. */
|
||||||
MUSCLE_INSERT_INT ("flag", SHRT_MIN);
|
MUSCLE_INSERT_INT ("locations_flag", locations_flag);
|
||||||
MUSCLE_INSERT_INT ("pure", pure_parser);
|
MUSCLE_INSERT_INT ("defines_flag", defines_flag);
|
||||||
MUSCLE_INSERT_INT ("nsym", nsyms);
|
|
||||||
MUSCLE_INSERT_INT ("debug", debug_flag);
|
|
||||||
MUSCLE_INSERT_INT ("final", final_state->number);
|
|
||||||
MUSCLE_INSERT_INT ("undef_token_number", undeftoken->number);
|
|
||||||
MUSCLE_INSERT_INT ("user_token_number_max", max_user_token_number);
|
|
||||||
MUSCLE_INSERT_INT ("error_verbose", error_verbose);
|
MUSCLE_INSERT_INT ("error_verbose", error_verbose);
|
||||||
MUSCLE_INSERT_STRING ("prefix", spec_name_prefix ? spec_name_prefix : "yy");
|
MUSCLE_INSERT_INT ("pure", pure_parser);
|
||||||
|
MUSCLE_INSERT_INT ("debug", debug_flag);
|
||||||
|
|
||||||
/* FIXME: This is wrong: the muscles should decide whether they hold
|
/* FIXME: This is wrong: the muscles should decide whether they hold
|
||||||
a copy or not, but the situation is too obscure currently. */
|
a copy or not, but the situation is too obscure currently. */
|
||||||
|
MUSCLE_INSERT_STRING ("prefix", spec_name_prefix ? spec_name_prefix : "yy");
|
||||||
MUSCLE_INSERT_STRING ("output_infix", output_infix ? output_infix : "");
|
MUSCLE_INSERT_STRING ("output_infix", output_infix ? output_infix : "");
|
||||||
MUSCLE_INSERT_STRING ("output_prefix", short_base_name);
|
MUSCLE_INSERT_STRING ("output_prefix", short_base_name);
|
||||||
MUSCLE_INSERT_STRING ("output_parser_name", parser_file_name);
|
MUSCLE_INSERT_STRING ("output_parser_name", parser_file_name);
|
||||||
MUSCLE_INSERT_STRING ("output_header_name", spec_defines_file);
|
MUSCLE_INSERT_STRING ("output_header_name", spec_defines_file);
|
||||||
|
|
||||||
MUSCLE_INSERT_INT ("nnts", nvars);
|
/* Symbols. */
|
||||||
MUSCLE_INSERT_INT ("nrules", nrules);
|
MUSCLE_INSERT_INT ("tokens_number", ntokens);
|
||||||
MUSCLE_INSERT_INT ("nstates", nstates);
|
MUSCLE_INSERT_INT ("nterms_number", nvars);
|
||||||
MUSCLE_INSERT_INT ("ntokens", ntokens);
|
MUSCLE_INSERT_INT ("undef_token_number", undeftoken->number);
|
||||||
|
MUSCLE_INSERT_INT ("user_token_number_max", max_user_token_number);
|
||||||
|
|
||||||
MUSCLE_INSERT_INT ("locations_flag", locations_flag);
|
/* Rules. */
|
||||||
MUSCLE_INSERT_INT ("defines_flag", defines_flag);
|
MUSCLE_INSERT_INT ("rules_number", nrules);
|
||||||
|
|
||||||
/* Copy definitions in directive. */
|
/* States. */
|
||||||
|
MUSCLE_INSERT_INT ("last", high);
|
||||||
|
MUSCLE_INSERT_INT ("flag", SHRT_MIN);
|
||||||
|
MUSCLE_INSERT_INT ("final_state_number", final_state->number);
|
||||||
|
MUSCLE_INSERT_INT ("states_number", nstates);
|
||||||
|
|
||||||
|
/* User Code. */
|
||||||
obstack_1grow (&pre_prologue_obstack, 0);
|
obstack_1grow (&pre_prologue_obstack, 0);
|
||||||
obstack_1grow (&post_prologue_obstack, 0);
|
obstack_1grow (&post_prologue_obstack, 0);
|
||||||
muscle_insert ("pre_prologue", obstack_finish (&pre_prologue_obstack));
|
muscle_insert ("pre_prologue", obstack_finish (&pre_prologue_obstack));
|
||||||
|
|||||||
@@ -35,9 +35,9 @@
|
|||||||
| Create a new array of N shifts/gotos. |
|
| Create a new array of N shifts/gotos. |
|
||||||
`---------------------------------------*/
|
`---------------------------------------*/
|
||||||
|
|
||||||
#define TRANSITIONS_ALLOC(Nshifts) \
|
#define TRANSITIONS_ALLOC(Num) \
|
||||||
(transitions_t *) xcalloc ((unsigned) (sizeof (transitions_t) \
|
(transitions_t *) xcalloc ((sizeof (transitions_t) \
|
||||||
+ (Nshifts - 1) * sizeof (state_number_t)), 1)
|
+ (Num - 1) * sizeof (state_number_t)), 1)
|
||||||
|
|
||||||
static transitions_t *
|
static transitions_t *
|
||||||
transitions_new (int num, state_number_t *the_states)
|
transitions_new (int num, state_number_t *the_states)
|
||||||
|
|||||||
Reference in New Issue
Block a user