]> git.saurik.com Git - bison.git/log
bison.git
22 years agoHave Bison grammars parsed by a Bison grammar.
Akim Demaille [Tue, 11 Jun 2002 20:16:05 +0000 (20:16 +0000)] 
Have Bison grammars parsed by a Bison grammar.
* src/reader.c, src/reader.h (prologue_augment): New.
* src/reader.c (copy_definition): Remove.
* src/reader.h, src/reader.c (gram_start_symbol_set, prologue_augment)
(grammar_symbol_append, grammar_rule_begin, grammar_midrule_action)
(grammar_current_rule_prec_set, grammar_current_rule_check)
(grammar_current_rule_symbol_append)
(grammar_current_rule_action_append): Export.
* src/parse-gram.y (symbol_list_new, symbol_list_symbol_append_
(symbol_list_action_append): Remove.
Hook the routines from reader.
* src/scan-gram.l: In INITIAL, characters and strings are tokens.
* src/system.h (ATTRIBUTE_NORETURN, ATTRIBUTE_UNUSED): Now.
* src/reader.c (read_declarations): Remove, unused.
* src/parse-gram.y: Handle the epilogue.
* src/reader.h, src/reader.c (gram_start_symbol_set): Rename as...
(grammar_start_symbol_set): this.
* src/scan-gram.l: Be sure to ``use'' yycontrol to keep GCC quiet.
* src/reader.c (readgram): Remove, unused.
(reader): Adjust to insert eoftoken and axiom where appropriate.
* src/reader.c (copy_dollar): Replace with...
* src/scan-gram.h (handle_dollar): this.
* src/parse-gram.y: Remove `%thong'.
* src/reader.c (copy_at): Replace with...
* src/scan-gram.h (handle_at): this.
* src/complain.h, src/complain.c (warn_at, complain_at, fatal_at):
New.
* src/scan-gram.l (YY_LINES): Keep lineno synchronized for the
time being.
* src/reader.h, src/reader.c (grammar_rule_end): New.
* src/parse.y (current_type, current_class): New.
Implement `%nterm', `%token' support.
Merge `%term' into `%token'.
(string_as_id): New.
* src/symtab.h, src/symtab.c (symbol_make_alias): Don't pass the
type name.
* src/parse-gram.y: Be sure to handle properly the beginning of
rules.
* src/parse-gram.y: Handle %type.
* src/reader.c (grammar_rule_end): Call grammar_current_rule_check.
* src/parse-gram.y: More directives support.
* src/options.c: No longer handle source directives.
* src/parse-gram.y: Fix %output.
* src/parse-gram.y: Handle %union.
Use the prologue locations.
* src/reader.c (parse_union_decl): Remove.
* src/reader.h, src/reader.c (epilogue_set): New.
* src/parse-gram.y: Use it.
* data/bison.simple, data/bison.c++: b4_stype is now either not
defined, then default to int, or to the contents of %union,
without `union' itself.
Adjust.
* src/muscle_tab.c (muscle_init): Don't predefine `stype'.
* src/output.c (actions_output): Don't output braces, as they are
already handled by the scanner.
* src/scan-gram.l (SC_CHARACTER): Set the user_token_number of
characters to themselves.
* tests/reduce.at (Reduced Automaton): End the grammars with %% so
that the epilogue has a proper #line.
* src/parse-gram.y: Handle precedence/associativity.
* src/symtab.c (symbol_precedence_set): Requires the symbol to be
a terminal.
* src/scan-gram.l (SC_BRACED_CODE): Catch strings and characters.
* tests/calc.at: Do not use `%token "foo"' as it makes not sense
at all to define terminals that cannot be emitted.
* src/scan-gram.l: Escape M4 characters.
* src/scan-gram.l: Working properly with escapes in user
strings/characters.
* tests/torture.at (AT_DATA_TRIANGULAR_GRAMMAR)
(AT_DATA_HORIZONTAL_GRAMMAR): Respect the `%token ID NUM STRING'
grammar.
Use more modest sizes, as for the time being the parser does not
release memory, and therefore the process swallows a huge amount
of memory.
* tests/torture.at (AT_DATA_LOOKAHEADS_GRAMMAR): Adjust to the
stricter %token grammar.
* src/symtab.h (associativity): Add `undef_assoc'.
(symbol_precedence_set): Do nothing when passed an undef_assoc.
* src/symtab.c (symbol_check_alias_consistence): Adjust.
* tests/regression.at (Invalid %directive): Remove, as it is now
meaningless.
(Invalid inputs): Adjust to the new error messages.
(Token definitions): The new grammar doesn't allow too many
eccentricities.
* src/lex.h, src/lex.c: Remove.
* src/reader.c (lastprec, skip_to_char, read_signed_integer)
(copy_character, copy_string2, copy_string, copy_identifier)
(copy_comment, parse_token_decl, parse_type_decl, parse_assoc_decl)
(parse_muscle_decl, parse_dquoted_param, parse_skel_decl)
(parse_action): Remove.
* po/POTFILES.in: Adjust.

22 years agoRegen.
Akim Demaille [Tue, 11 Jun 2002 19:52:01 +0000 (19:52 +0000)] 
Regen.

22 years agoUpdate.
Akim Demaille [Tue, 11 Jun 2002 10:12:31 +0000 (10:12 +0000)] 
Update.

22 years agoRegen.
Akim Demaille [Tue, 11 Jun 2002 08:17:05 +0000 (08:17 +0000)] 
Regen.

22 years ago* src/reader.c (parse_action): Don't store directly into the
Akim Demaille [Tue, 11 Jun 2002 08:08:36 +0000 (08:08 +0000)] 
* src/reader.c  (parse_action): Don't store directly into the
rule's action member: return the action as a string.
Don't require `rule_length' as an argument: compute it.
(grammar_current_rule_symbol_append)
(grammar_current_rule_action_append): New, eved out from
(readgram): here.
Remove `action_flag', `rulelength', unused now.

22 years ago* src/reader.c (grammar_current_rule_prec_set).
Akim Demaille [Tue, 11 Jun 2002 08:08:22 +0000 (08:08 +0000)] 
* src/reader.c (grammar_current_rule_prec_set).
(grammar_current_rule_check): New, eved out from...
(readgram): here.
Remove `xaction', `first_rhs': useless.
* tests/input.at (Type clashes): New.
* tests/existing.at (GNU Cim Grammar): Adjust.

22 years ago* src/reader.c (grammar_midrule_action): New, Eved out from
Akim Demaille [Tue, 11 Jun 2002 08:08:06 +0000 (08:08 +0000)] 
* src/reader.c (grammar_midrule_action): New, Eved out from
(readgram): here.

22 years ago* src/reader.c (grammar_rule_begin, previous_rule, current_rule):
Akim Demaille [Tue, 11 Jun 2002 08:07:52 +0000 (08:07 +0000)] 
* src/reader.c (grammar_rule_begin, previous_rule, current_rule):
New.
(readgram): Use them as replacement of inlined code, crule and
crule1.

22 years ago* src/reader.c (grammar_end, grammar_symbol_append): New.
Akim Demaille [Tue, 11 Jun 2002 08:07:36 +0000 (08:07 +0000)] 
* src/reader.c (grammar_end, grammar_symbol_append): New.
(readgram): Use them.
Make the use of `p' as local as possible.

22 years agoGCJ's parser requires the tokens to be defined before the prologue.
Akim Demaille [Tue, 11 Jun 2002 08:01:41 +0000 (08:01 +0000)] 
GCJ's parser requires the tokens to be defined before the prologue.
* data/bison.simple: Output the token definition before the user's
prologue.
* tests/regression.at (Braces parsing, Duplicate string)
(Mixing %token styles): Check the output from bison.
(Early token definitions): New.

22 years agoRegen.
Akim Demaille [Mon, 10 Jun 2002 08:44:06 +0000 (08:44 +0000)] 
Regen.

22 years ago* src/symtab.c (symbol_user_token_number_set): Don't complain when
Akim Demaille [Mon, 10 Jun 2002 08:38:10 +0000 (08:38 +0000)] 
* src/symtab.c (symbol_user_token_number_set): Don't complain when
assigning twice the same user number to a token, so that we can
use it in...
* src/lex.c (lex): here.
Also use `symbol_class_set' instead of hand written code.
* src/reader.c (parse_assoc_decl): Likewise.

22 years ago* src/symtab.c, src/symtab.c (symbol_class_set)
Akim Demaille [Mon, 10 Jun 2002 08:37:55 +0000 (08:37 +0000)] 
* src/symtab.c, src/symtab.c (symbol_class_set)
(symbol_user_token_number_set): New.
* src/reader.c (parse_token_decl): Use them.
Use a switch instead of ifs.
Use a single argument.

22 years agoRemove `%thong' support as it is undocumented, unused, duplicates
Akim Demaille [Mon, 10 Jun 2002 08:37:30 +0000 (08:37 +0000)] 
Remove `%thong' support as it is undocumented, unused, duplicates
`%token's job, and creates useless e-mail traffic with people who
want to know what it is, why it is undocumented, unused, and
duplicates `%token's job.
* src/reader.c (parse_thong_decl): Remove.
* src/options.c (option_table): Remove "thong".
* src/lex.h (tok_thong): Remove.

22 years ago* src/symtab.c, src/symtab.c (symbol_type_set)
Akim Demaille [Mon, 10 Jun 2002 08:36:49 +0000 (08:36 +0000)] 
* src/symtab.c, src/symtab.c (symbol_type_set)
(symbol_precedence_set): New.
* src/reader.c (parse_type_decl, parse_assoc_decl): Use them.
(value_components_used): Remove, unused.

22 years agoMove symbols handling code out of the reader.
Akim Demaille [Mon, 10 Jun 2002 08:35:39 +0000 (08:35 +0000)] 
Move symbols handling code out of the reader.
* src/reader.h, src/reader.c (errtoken, undeftoken, eoftoken)
(axiom): Move to...
* src/symtab.h, src/symtab.c: here.
* src/gram.c (start_symbol): Remove: use startsymbol->number.
* src/reader.c (startval): Rename as...
* src/symtab.h, src/symtab.c (startsymbol): this.
* src/reader.c: Adjust.
* src/reader.c (symbol_check_defined, symbol_make_alias)
(symbol_check_alias_consistence, symbol_pack, symbol_translation)
(token_translations_init)
Move to...
* src/symtab.c: here.
* src/reader.c (packsymbols): Move to...
* src/symtab.h, src/symtab.c (symbols_pack): here.
* src/symtab.h, src/symtab.c (symbol_make_alias): Takes SYMVAL as
argument.

22 years ago* src/muscle_tab.c (muscle_insert, muscle_find): Declarations,
Akim Demaille [Mon, 3 Jun 2002 07:41:58 +0000 (07:41 +0000)] 
* src/muscle_tab.c (muscle_insert, muscle_find): Declarations,
then statements.

22 years ago* src/muscle_tab.c (muscle_find, muscle_insert): Don't initialize
Akim Demaille [Mon, 3 Jun 2002 07:30:03 +0000 (07:30 +0000)] 
* src/muscle_tab.c (muscle_find, muscle_insert): Don't initialize
structs with non literals.
* src/scan-skel.l: never-interactive.
* src/conflicts.c (enum conflict_resolution_e): No trailing
comma.
* src/getargs.c (usage): Split long literal strings.
Reported by Hans Aberg.

22 years agoRegen.
Akim Demaille [Mon, 3 Jun 2002 07:29:29 +0000 (07:29 +0000)] 
Regen.

22 years ago* data/bison.c++: Use C++ ostreams.
Akim Demaille [Tue, 28 May 2002 12:09:02 +0000 (12:09 +0000)] 
* data/bison.c++: Use C++ ostreams.
(cdebug_): New member.

22 years agoUpdate.
Akim Demaille [Tue, 28 May 2002 12:03:11 +0000 (12:03 +0000)] 
Update.

22 years ago* src/output.c (output_skeleton): Be sure to allocate enough room
Akim Demaille [Tue, 28 May 2002 10:02:36 +0000 (10:02 +0000)] 
* src/output.c (output_skeleton): Be sure to allocate enough room
for `/' _and_ for `0' in full_skeleton.

22 years ago* data/bison.c++: Catch up with bison.simple:
Akim Demaille [Tue, 28 May 2002 09:53:35 +0000 (09:53 +0000)] 
* data/bison.c++: Catch up with bison.simple:
2002-05-24  Paul Hilfinger  <Hilfinger@CS.Berkeley.EDU>
and Paul Eggert  <eggert@twinsun.com>: `error' handing.
2002-05-26  Akim Demaille  <akim@epita.fr>: stos_, token_number_,
and popping traces.

22 years ago* src/output.c (output_skeleton): Put an explicit path in front of
Paul Hilfinger [Mon, 27 May 2002 22:33:54 +0000 (22:33 +0000)] 
* src/output.c (output_skeleton): Put an explicit path in front of
the skeleton file name, rather than relying on the -I directory,
to partially alleviate effects of having a skeleton file lying around
in the current directory.

22 years ago* src/conflicts.c (log_resolution): Correct typo:
Paul Hilfinger [Mon, 27 May 2002 20:55:43 +0000 (20:55 +0000)] 
* src/conflicts.c (log_resolution): Correct typo:
obstack_printf should be obstack_fgrow1.

22 years agoRegen.
Akim Demaille [Mon, 27 May 2002 06:29:28 +0000 (06:29 +0000)] 
Regen.

22 years agoAdd.
Akim Demaille [Mon, 27 May 2002 06:18:41 +0000 (06:18 +0000)] 
Add.

22 years ago* src/state.h (state_t): `solved_conflicts' is a new member.
Akim Demaille [Sun, 26 May 2002 20:25:52 +0000 (20:25 +0000)] 
* src/state.h (state_t): `solved_conflicts' is a new member.
* src/LR0.c (new_state): Set it to 0.
* src/conflicts.h, src/conflicts.c (print_conflicts)
(free_conflicts, solve_conflicts): Rename as...
(conflicts_print, conflicts_free, conflicts_solve): these.
Adjust callers.
* src/conflicts.c (enum conflict_resolution_e)
(solved_conflicts_obstack): New, used by...
(log_resolution): this.
Adjust to attach the conflict resolution to each state.
Complete the description with the precedence/associativity
information.
(resolve_sr_conflict): Adjust.
* src/print.c (print_state): Output its solved_conflicts.
* tests/conflicts.at (Unresolved SR Conflicts)
(Solved SR Conflicts): Exercise --report=all.

22 years ago* src/LR0.c, src/derives.c, src/gram.c, src/gram.h, src/lalr.c,
Akim Demaille [Sun, 26 May 2002 18:39:05 +0000 (18:39 +0000)] 
* src/LR0.c, src/derives.c, src/gram.c, src/gram.h, src/lalr.c,
* src/nullable.c, src/output.c, src/print.c, src/print_graph.c,
* src/reader.c, src/reduce.c, src/state.h, src/symtab.h
(token_number_t, item_number_as_token_number)
(token_number_as_item_number, muscle_insert_token_number_table):
Rename as...
(symbol_number_t, item_number_as_symbol_number)
(symbol_number_as_item_number, muscle_insert_symbol_number_table):
these, since it is more appropriate.

22 years ago* tests/calc.at (AT_CHECK_CALC): Adjust: there are now additional
Akim Demaille [Sun, 26 May 2002 18:38:41 +0000 (18:38 +0000)] 
* tests/calc.at (AT_CHECK_CALC): Adjust: there are now additional
`Error:' lines.
* data/bison.simple (yystos) [YYDEBUG]: New.
(yyparse) [YYDEBUG]: Display the symbols which are popped during
error recovery.
* tests/regression.at (Web2c Actions): Adjust: yystos is output now.

22 years agoRegen.
Akim Demaille [Sun, 26 May 2002 18:38:21 +0000 (18:38 +0000)] 
Regen.

22 years ago* doc/bison.texinfo (Debugging): Split into...
Akim Demaille [Sat, 25 May 2002 16:12:40 +0000 (16:12 +0000)] 
* doc/bison.texinfo (Debugging): Split into...
(Tracing): this new section, its former contents, and...
(Understanding): this new section.
* src/getargs.h, src/getargs.c (verbose_flag): Remove, replaced
by...
(report_flag): this.
Adjust all dependencies.
(report_args, report_types, report_argmatch): New.
(usage, getargs): Report/support -r, --report.
* src/options.h
(struct option_table_struct): Rename as..,
(struct option_table_s): this.
Rename the `set_flag' member to `flag' to match with getopt_long's
struct.
* src/options.c (option_table): Split verbose into an entry for
%verbose, and another for --verbose.
Support --report/-r, so remove -r from the obsolete --raw.
* src/print.c: Attach full item sets and lookaheads reports to
report_flag instead of trace_flag.
* lib/argmatch.h, lib/argmatch.c: New, from Fileutils 4.1.

22 years ago* data/bison.simple (yyparse): Correct error handling to conform to
Paul Eggert [Fri, 24 May 2002 12:45:23 +0000 (12:45 +0000)] 
* data/bison.simple (yyparse): Correct error handling to conform to
POSIX and yacc.  Specifically, after syntax error is discovered,
do not reduce further before shifting the error token.
Clean up the code a bit by removing the labels yyerrdefault,
yyerrhandle, yyerrpop.
* NEWS: Document the above.

22 years agoDocument the recent error-recovery fix by Paul Hilfinger.
Paul Eggert [Fri, 24 May 2002 12:38:52 +0000 (12:38 +0000)] 
Document the recent error-recovery fix by Paul Hilfinger.

22 years ago(yyparse): Correct error handling to conform to
Paul Eggert [Fri, 24 May 2002 12:37:12 +0000 (12:37 +0000)] 
(yyparse): Correct error handling to conform to
POSIX and yacc.  Specifically, after syntax error is discovered,
do not reduce further before shifting the error token.
Clean up the code a bit by removing the labels yyerrdefault,
yyerrhandle, yyerrpop.

22 years ago* data/bison.simple (yyr1): Don't use yy_token_number_type as element
Paul Hilfinger [Mon, 20 May 2002 22:56:53 +0000 (22:56 +0000)] 
* data/bison.simple (yyr1): Don't use yy_token_number_type as element
type; it isn't always big enough, since it doesn't necessarily
include non-terminals.
(yytranslate): Expand definition of yy_token_number_type, so that
the latter can be removed.
(yy_token_number_type): Remove, only one use.
* data/bison.c++ (r1_): Parallel change to yyr1 in bison.simple---
don't use TokenNumberType as element type.

* tests/regression.at: Modify expected output to agree with change
to yyr1 and yytranslate.

22 years agoUse copy_character not obstack_1grow in parse_action.
Florian Krohm [Tue, 14 May 2002 00:25:23 +0000 (00:25 +0000)] 
Use copy_character not obstack_1grow in parse_action.

22 years ago* tests/regression.at (Token definitions): Prototype yylex and
Akim Demaille [Mon, 13 May 2002 08:56:20 +0000 (08:56 +0000)] 
* tests/regression.at (Token definitions): Prototype yylex and
yyerror.

22 years ago* src/scan-skel.l: Correct off-by-one error in handling of __oline__.
Paul Hilfinger [Mon, 13 May 2002 00:44:52 +0000 (00:44 +0000)] 
* src/scan-skel.l: Correct off-by-one error in handling of __oline__.

22 years ago* data/bison.simple (b4_sint_type, b4_uint_type): Correct to reflect
Paul Hilfinger [Mon, 13 May 2002 00:27:26 +0000 (00:27 +0000)] 
* data/bison.simple (b4_sint_type, b4_uint_type): Correct to reflect
32-bit arithmetic.
* data/bison.c++ (b4_sint_type, b4_uint_type): Ditto.

22 years agoMore.
Akim Demaille [Tue, 7 May 2002 09:31:01 +0000 (09:31 +0000)] 
More.

22 years agoRemove.
Akim Demaille [Tue, 7 May 2002 09:20:26 +0000 (09:20 +0000)] 
Remove.

22 years ago* tests/synclines.at: Be sure to prototype yylex and yyerror to
Akim Demaille [Tue, 7 May 2002 08:13:00 +0000 (08:13 +0000)] 
* tests/synclines.at: Be sure to prototype yylex and yyerror to
avoid GCC warnings.

22 years agoKill GCC warnings.
Akim Demaille [Tue, 7 May 2002 08:07:32 +0000 (08:07 +0000)] 
Kill GCC warnings.
* src/reduce.c (nonterminals_reduce): Don't loop over RITEM: loop
over the RHS of each rule.
* src/gram.h, src/gram.c (nritems): Is `unsigned int', not int.
* src/state.h (state_t): Member `nitems' is unsigned short.
* src/LR0.c (get_state): Adjust.
* src/reader.c (packgram): Likewise.
* src/output.c (GENERATE_MUSCLE_INSERT_TABLE): `max' is of type
`Type'.
(muscle_insert_int_table): Remove, unused.
(prepare_rules): Remove `max'.

22 years agoCorrected comment for spec_name_prefix variable.
Florian Krohm [Mon, 6 May 2002 13:42:59 +0000 (13:42 +0000)] 
Corrected comment for spec_name_prefix variable.

22 years ago* src/closure.c (print_firsts): Display of the symbol tags.
Akim Demaille [Mon, 6 May 2002 08:42:24 +0000 (08:42 +0000)] 
* src/closure.c (print_firsts): Display of the symbol tags.
(bitmatrix_print): Move to...
* lib/bitsetv-print.h, lib/bitsetv-print.c (bitsetv_matrix_dump):
here.
* tests/sets.at (Nullable, Broken Closure, Firsts): Adjust.

22 years agoRegen.
Akim Demaille [Mon, 6 May 2002 08:33:43 +0000 (08:33 +0000)] 
Regen.

22 years ago* src/muscle_tab.c (muscle_m4_output): Must return TRUE for
Akim Demaille [Mon, 6 May 2002 08:23:54 +0000 (08:23 +0000)] 
* src/muscle_tab.c (muscle_m4_output): Must return TRUE for
hash_do_for_each.

22 years ago* src/LR0.c (new_state, get_state): Instead of using the global
Akim Demaille [Mon, 6 May 2002 08:23:41 +0000 (08:23 +0000)] 
* src/LR0.c (new_state, get_state): Instead of using the global
`kernel_size' and `kernel_base', have two new arguments:
`core_size' and `core'.
Adjust callers.

22 years ago* src/reader.c (packgram): No longer end `ritem' with a 0
Akim Demaille [Mon, 6 May 2002 08:23:28 +0000 (08:23 +0000)] 
* src/reader.c (packgram): No longer end `ritem' with a 0
sentinel: it is not used.

22 years agoRegen.
Akim Demaille [Mon, 6 May 2002 07:45:55 +0000 (07:45 +0000)] 
Regen.

22 years agoNew experimental feature: display the lookaheads in the report and
Akim Demaille [Sun, 5 May 2002 11:56:49 +0000 (11:56 +0000)] 
New experimental feature: display the lookaheads in the report and
graph.
* src/print (print_core): When --trace-flag, display the rules
lookaheads.
* src/print_graph.c (print_core): Likewise.
Swap the arguments.
Adjust caller.

22 years ago* tests/torture.at (Many lookaheads): New test.
Akim Demaille [Sun, 5 May 2002 11:56:37 +0000 (11:56 +0000)] 
* tests/torture.at (Many lookaheads): New test.

22 years ago* src/output.c (GENERATE_OUTPUT_TABLE): Replace with...
Akim Demaille [Sun, 5 May 2002 11:56:27 +0000 (11:56 +0000)] 
* src/output.c (GENERATE_OUTPUT_TABLE): Replace with...
(GENERATE_MUSCLE_INSERT_TABLE): this.
(output_int_table, output_unsigned_int_table, output_short_table)
(output_token_number_table, output_item_number_table): Replace with...
(muscle_insert_int_table, muscle_insert_unsigned_int_table)
(muscle_insert_short_table, muscle_insert_token_number_table)
(muscle_insert_item_number_table): these.
Adjust all callers.
(prepare_tokens): Don't free `translations', since...
* src/reader.h, src/reader.c (grammar_free): do it.
Move to...
* src/gram.h, src/gram.c (grammar_free): here.
* data/bison.simple, data/bison.c++: b4_token_number_max is now
b4_translate_max.

22 years ago* src/output.c (output_unsigned_int_table): New.
Akim Demaille [Sun, 5 May 2002 11:56:06 +0000 (11:56 +0000)] 
* src/output.c (output_unsigned_int_table): New.
(prepare_rules): `i' is unsigned.
`prhs', `rline', `r2' are unsigned int.
Rename muscle `rhs_number_max' as `rhs_max'.
Output muscles `prhs_max', `rline_max', and `r2_max'.
Free rline and r1.
* data/bison.simple, data/bison.c++: Adjust to use these muscles
to compute types instead of constant types.
* tests/regression.at (Web2c Actions): Adjust.

22 years agoupdate.
Akim Demaille [Sun, 5 May 2002 11:55:45 +0000 (11:55 +0000)] 
update.

22 years ago* src/symtab.h (SALIAS, SUNDEF): Rename as...
Akim Demaille [Sat, 4 May 2002 08:48:04 +0000 (08:48 +0000)] 
* src/symtab.h (SALIAS, SUNDEF): Rename as...
(USER_NUMBER_ALIAS, USER_NUMBER_UNDEFINED): these.
Adjust dependencies.
* src/output.c (token_definitions_output): Be sure not to output a
`#define 'a'' when fed with `%token 'a' "a"'.
* tests/regression.at (Token definitions): New.

22 years ago* data/bison.simple (b4_token_defines): Also define YYTOKENTYPE
Paul Eggert [Fri, 3 May 2002 17:55:00 +0000 (17:55 +0000)] 
* data/bison.simple (b4_token_defines): Also define YYTOKENTYPE
for K&R C.

22 years ago(b4_token_defines): Also define YYTOKENTYPE for K&R C.
Paul Eggert [Fri, 3 May 2002 17:54:29 +0000 (17:54 +0000)] 
(b4_token_defines): Also define YYTOKENTYPE for K&R C.

22 years agoMore.
Akim Demaille [Fri, 3 May 2002 17:09:50 +0000 (17:09 +0000)] 
More.

22 years agoMore.
Akim Demaille [Fri, 3 May 2002 16:53:07 +0000 (16:53 +0000)] 
More.

22 years ago* data/bison.simple (m4_if): Don't output empty enums.
Akim Demaille [Fri, 3 May 2002 16:22:54 +0000 (16:22 +0000)] 
* data/bison.simple (m4_if): Don't output empty enums.
And actually, output valid enum definitions :(.

22 years agoGettext 0.11.3 adjustments.
Akim Demaille [Fri, 3 May 2002 16:11:40 +0000 (16:11 +0000)] 
Gettext 0.11.3 adjustments.

22 years ago* configure.bat: Remove, completely obsolete.
Akim Demaille [Fri, 3 May 2002 16:10:29 +0000 (16:10 +0000)] 
* configure.bat: Remove, completely obsolete.
* Makefile.am (EXTRA_DIST): Adjust.
Don't distribute config.rpath...
* config/Makefile.am (EXTRA_DIST): Do it.

22 years ago* configure.in (GETTEXT_VERSION): New.
Akim Demaille [Fri, 3 May 2002 15:52:53 +0000 (15:52 +0000)] 
* configure.in (GETTEXT_VERSION): New.
Suggested by Bruno Haible for the forthcoming Gettext 0.10.3.

22 years agoWarnings.
Akim Demaille [Fri, 3 May 2002 15:07:35 +0000 (15:07 +0000)] 
Warnings.

22 years ago* data/bison.simple (b4_token_enum): New.
Akim Demaille [Fri, 3 May 2002 08:42:48 +0000 (08:42 +0000)] 
* data/bison.simple (b4_token_enum): New.
(b4_token_defines): Use it to output tokens both as #define and
enums.
Suggested by Paul Eggert.
* src/output.c (token_definitions_output): Don't output spurious
white spaces.

22 years ago* data/m4sugar/m4sugar.m4: Update from CVS Autoconf.
Akim Demaille [Fri, 3 May 2002 08:26:55 +0000 (08:26 +0000)] 
* data/m4sugar/m4sugar.m4: Update from CVS Autoconf.

22 years agoRegen.
Akim Demaille [Thu, 2 May 2002 16:46:05 +0000 (16:46 +0000)] 
Regen.

22 years ago* data/bison.c++: Adapt expansion of $s and @s to the C++ parser.
Robert Anisko [Thu, 2 May 2002 16:43:00 +0000 (16:43 +0000)] 
* data/bison.c++: Adapt expansion of $s and @s to the C++ parser.
Update the stack class, give a try to deque as the default container.

22 years ago* data/bison.simple (yyparse): Do not implement @$ = @1.
Akim Demaille [Thu, 2 May 2002 16:40:54 +0000 (16:40 +0000)] 
* data/bison.simple (yyparse): Do not implement @$ = @1.
(YYLLOC_DEFAULT): Adjust to do it.
* doc/bison.texinfo (Location Default Action): Fix.

22 years ago* src/reader.c (parse_braces): Merge into...
Akim Demaille [Thu, 2 May 2002 16:16:11 +0000 (16:16 +0000)] 
* src/reader.c (parse_braces): Merge into...
(parse_action): this.

22 years agoUpdate.
Akim Demaille [Thu, 2 May 2002 16:12:35 +0000 (16:12 +0000)] 
Update.

22 years ago* configure.in (ALL_LINGUAS): Remove.
Akim Demaille [Thu, 2 May 2002 15:13:09 +0000 (15:13 +0000)] 
* configure.in (ALL_LINGUAS): Remove.
* po/LINGUAS, hr.po: New.

22 years agoRemove the so called hairy (semantic) parsers.
Akim Demaille [Thu, 2 May 2002 15:06:46 +0000 (15:06 +0000)] 
Remove the so called hairy (semantic) parsers.
* src/system.h (EXT_GUARD_C, EXT_STYPE_H): Remove.
* src/gram.h, src/gram.c (semantic_parser): Remove.
(rule_t): Remove the guard and guard_line members.
* src/lex.h (token_t): remove tok_guard.
* src/options.c (option_table): Remove %guard and %semantic_parser
support.
* src/output.c, src/output.h (guards_output): Remove.
(prepare): Adjust.
(token_definitions_output): Don't output the `T'
tokens (???).
(output_skeleton): Don't output the guards.
* src/files.c, src/files.c (attrsfile): Remove.
* src/reader.c (symbol_list): Remove the guard and guard_line
members.
Adjust dependencies.
(parse_guard): Remove.
* data/bison.hairy: Remove.
* doc/bison.texinfo (Environment Variables): Remove occurrences of
BISON_HAIRY.

22 years agoRegen.
Akim Demaille [Thu, 2 May 2002 15:05:02 +0000 (15:05 +0000)] 
Regen.

22 years agoNote: the previous patch partially drops `semantic-parser' support: it always does...
Akim Demaille [Thu, 2 May 2002 14:36:39 +0000 (14:36 +0000)] 
Note: the previous patch partially drops `semantic-parser' support: it always does `rule_length - n', where semantic parsers ought to always use `-n'.

22 years ago* src/reader.c (copy_at, copy_dollarm parse_braces, parse_action)
Akim Demaille [Thu, 2 May 2002 14:33:48 +0000 (14:33 +0000)] 
* src/reader.c (copy_at, copy_dollarm parse_braces, parse_action)
(parse_guard): Rename the formal argument `stack_offset' as
`rule_length', which is more readable.
Adjust callers.
(copy_at, copy_dollar): Instead of outputting the hard coded
values of $$, $n and so forth, output invocation to b4_lhs_value,
b4_lhs_location, b4_rhs_value, and b4_rhs_location.
* data/bison.simple, data/bison.c++ (b4_lhs_value)
(b4_lhs_location, b4_rhs_value, and b4_rhs_location: New.

22 years ago* configure.in (AC_INIT): Bump to 1.49b.
Akim Demaille [Thu, 2 May 2002 09:25:54 +0000 (09:25 +0000)] 
* configure.in (AC_INIT): Bump to 1.49b.
(AM_INIT_AUTOMAKE): Short invocation.

22 years agoVersion 1.49a. BISON-1_49a
Akim Demaille [Thu, 2 May 2002 07:49:00 +0000 (07:49 +0000)] 
Version 1.49a.

22 years agoUpdate.
Akim Demaille [Thu, 2 May 2002 07:46:51 +0000 (07:46 +0000)] 
Update.

22 years agoUpdate from TP.
Akim Demaille [Thu, 2 May 2002 07:30:41 +0000 (07:30 +0000)] 
Update from TP.

22 years ago* src/skeleton.h: Remove.
Akim Demaille [Wed, 1 May 2002 10:32:39 +0000 (10:32 +0000)] 
* src/skeleton.h: Remove.

22 years ago* src/skeleton.h: Fix the #endif.
Akim Demaille [Wed, 1 May 2002 10:28:05 +0000 (10:28 +0000)] 
* src/skeleton.h: Fix the #endif.
Reported by Magnus Fromreide.

22 years ago* data/bison.simple (YYCOPY): Fix [] quoting problem in the non-GCC case.
Paul Eggert [Sat, 27 Apr 2002 01:21:14 +0000 (01:21 +0000)] 
* data/bison.simple (YYCOPY): Fix [] quoting problem in the non-GCC case.

22 years ago(YYCOPY): Fix [] quoting problem in the non-GCC case.
Paul Eggert [Sat, 27 Apr 2002 01:20:51 +0000 (01:20 +0000)] 
(YYCOPY): Fix [] quoting problem in the non-GCC case.

22 years ago(YYSTYPE_IS_TRIVIAL, YYLTYPE_IS_TRIVIAL):
Paul Eggert [Sat, 27 Apr 2002 01:10:59 +0000 (01:10 +0000)] 
(YYSTYPE_IS_TRIVIAL, YYLTYPE_IS_TRIVIAL):
Define if we define YYSTYPE and YYLTYPE, respectively.

22 years ago* data/bison.simple (YYSTYPE_IS_TRIVIAL, YYLTYPE_IS_TRIVIAL):
Paul Eggert [Sat, 27 Apr 2002 01:10:28 +0000 (01:10 +0000)] 
* data/bison.simple (YYSTYPE_IS_TRIVIAL, YYLTYPE_IS_TRIVIAL):
Define if we define YYSTYPE and YYLTYPE, respectively.

22 years ago* src/scan-skel.l: Postprocess quadrigraphs.
Robert Anisko [Thu, 25 Apr 2002 14:36:38 +0000 (14:36 +0000)] 
* src/scan-skel.l: Postprocess quadrigraphs.
* src/reader.c (copy_character): New function, used to output
single characters while replacing `[' and `]' with quadrigraphs, to
avoid troubles with M4 quotes.
(copy_comment): Output characters with copy_character.
(read_additionnal_code): Likewise.
(copy_string2): Likewise.
(copy_definition): Likewise.
* tests/calc.at: Exercise M4 quoting.

22 years ago* tests/sets.at (AT_EXTRACT_SETS): Sed portability issue: no space
Akim Demaille [Thu, 25 Apr 2002 10:30:27 +0000 (10:30 +0000)] 
* tests/sets.at (AT_EXTRACT_SETS): Sed portability issue: no space
between `!' and the command.
Reported by Paul Eggert.

22 years agoDon't `touch' the files gettextize modified.
Akim Demaille [Thu, 25 Apr 2002 10:29:47 +0000 (10:29 +0000)] 
Don't `touch' the files gettextize modified.

22 years ago* tests/calc.at: Exercise prologue splitting.
Robert Anisko [Wed, 24 Apr 2002 16:22:57 +0000 (16:22 +0000)] 
* tests/calc.at: Exercise prologue splitting.
* data/bison.simple, data/bison.c++: Use `b4_pre_prologue' and
`b4_post_prologue' instead of `b4_prologue'.
* src/output.c (prepare): Add the `pre_prologue' and `post_prologue'
muscles.
(output): Free pre_prologue_obstack and post_prologue_obstack.
* src/files.h, src/files.c (attrs_obstack): Remove.
(pre_prologue_obstack, post_prologue_obstack): New.
* src/reader.c (copy_definition): Add a parameter to specify the
obstack to fill, instead of using attrs_obstack unconditionally.
(read_declarations): Pass pre_prologue_obstack to copy_definition if
`%union' has not yet been seen, pass post_prologue_obstack otherwise.

22 years agoRemove a dead item.
Akim Demaille [Wed, 24 Apr 2002 12:04:53 +0000 (12:04 +0000)] 
Remove a dead item.

22 years agoLanguage independent actions.
Akim Demaille [Wed, 24 Apr 2002 11:23:13 +0000 (11:23 +0000)] 
Language independent actions.

22 years agoAlso pass --install to the second invocation of autoreconf, to let automake install...
Akim Demaille [Wed, 24 Apr 2002 09:44:31 +0000 (09:44 +0000)] 
Also pass --install to the second invocation of autoreconf, to let automake install its files.

22 years ago* data/bison.simple: Remove unnecessary commentary and white
Paul Eggert [Wed, 24 Apr 2002 05:56:13 +0000 (05:56 +0000)] 
* data/bison.simple: Remove unnecessary commentary and white
space differences from 1_29-branch.
Depend on YYERROR_VERBOSE, not defined (YYERROR_VERBOSE).

(union yyalloc, YYSTACK_GAP_MAX, YYSTACK_BYTES, YYCOPY,
YYSTACK_RELOCATE): Do not define if yyoverflow is defined, or
if this is a C++ parser and YYSTYPE or YYLTYPE has nontrivial
constructors or destructors.

(yyparse) [! defined YYSTACK_RELOCATE]: Do not relocate the stack.

22 years agoRemove unnecessary commentary and white space differences from
Paul Eggert [Wed, 24 Apr 2002 05:55:48 +0000 (05:55 +0000)] 
Remove unnecessary commentary and white space differences from
1_29-branch.  Depend on YYERROR_VERBOSE, not defined (YYERROR_VERBOSE).

(union yyalloc, YYSTACK_GAP_MAX, YYSTACK_BYTES, YYCOPY,
YYSTACK_RELOCATE): Do not define if yyoverflow is defined, or
if this is a C++ parser and YYSTYPE or YYLTYPE has nontrivial
constructors or destructors.

(yyparse) [! defined YYSTACK_RELOCATE]: Do not relocate the stack.

22 years agoMore.
Akim Demaille [Tue, 23 Apr 2002 14:07:56 +0000 (14:07 +0000)] 
More.

22 years ago* tests/sets.at (AT_EXTRACT_SETS): Don't use 8 char long sed labels.
Akim Demaille [Tue, 23 Apr 2002 09:06:42 +0000 (09:06 +0000)] 
* tests/sets.at (AT_EXTRACT_SETS): Don't use 8 char long sed labels.
* tests/synclines.at (AT_TEST_SYNCLINE): Be robust to GCC's
location with columns.
* tests/conflicts.at (%nonassoc and eof): Don't use `error.h'.
All reported by Paul Eggert.

22 years agoUse rm/mv -f.
Akim Demaille [Tue, 23 Apr 2002 08:33:24 +0000 (08:33 +0000)] 
Use rm/mv -f.
Suggested by Paul Eggert.