Commit Graph

  • b64755e391 Add strtoul.c In src/scan-gram.l, move helper function definitions to epilogue. Paul Eggert 2002-12-02 18:20:30 +00:00
  • 022fb98e85 (AC_REPLACE_FUNCS): Add strtoul. Paul Eggert 2002-12-02 18:19:51 +00:00
  • 570fe42828 New file, from gnulib. Paul Eggert 2002-12-02 18:19:30 +00:00
  • 6c30d6413e (no_cr_read, extend_location): Move to epilogue, and put only a forward declaration in the prologue. This is for consistency with the other scanner helper functions. Paul Eggert 2002-12-01 02:37:56 +00:00
  • 6ba5559289 Type clashes now generate warnings, not errors, since it appears that POSIX may allow some grammars with type clashes. Paul Eggert 2002-11-30 09:52:42 +00:00
  • e927351156 (grammar_current_rule_check): Warn about type clashes instead of complaining. Paul Eggert 2002-11-30 09:52:11 +00:00
  • 38e71ff8c8 (Type Clashes): Expect warnings, not complaints. Paul Eggert 2002-11-30 09:51:50 +00:00
  • 3b0ee3aa8b fund -> found Paul Eggert 2002-11-30 09:25:06 +00:00
  • 6e746484fc Add Yacc Library. gram_error is static. yylex and yyerror must be declared. Paul Eggert 2002-11-30 09:20:52 +00:00
  • 74724a70a5 Describe Yacc library, lex-param and parse-param changes. Paul Eggert 2002-11-30 09:18:34 +00:00
  • 1fec91df90 (gram_error): Now static. Add static decl. (print_token_value): Omit parameter names from forward decl, for consistency. Paul Eggert 2002-11-30 09:16:54 +00:00
  • d18f45311a (gram_error): Remove decl. Paul Eggert 2002-11-30 09:16:32 +00:00
  • 93dd49ab29 (Yacc Library): New node. Regenerate top menu. Paul Eggert 2002-11-30 09:11:30 +00:00
  • 1f14d97ae5 (lib_LIBRARIES, liby_a_SOURCES): New macros. Paul Eggert 2002-11-30 09:10:55 +00:00
  • 0af19cd0c1 lib/main.c, lib/yyerror.c: New files. Paul Eggert 2002-11-30 09:10:20 +00:00
  • 38a92d500a Emphasize that yylex and yyerror must be declared before being used. E.g., one should typically declare them in the prologue. Use GNU coding style in examples. Put "const" consistently after the type it modifies. Mention that C99 supports "inline". Mention that yyerror traditionally returns "int". Paul Eggert 2002-11-30 07:42:37 +00:00
  • 6b0d38ab2c [a-f] -> [abcdef], so that we don't assume the C locale. Paul Eggert 2002-11-29 09:03:16 +00:00
  • 88510f9c07 %parse-param and %lex-param now take just one argument, the declaration; the argument name is deduced from the declaration. Paul Eggert 2002-11-29 08:45:33 +00:00
  • da90e18c6e (Simple LALR Calculator): Adopt new convention for %parse-param and %lex-param. Paul Eggert 2002-11-29 08:45:14 +00:00
  • 763ed7a687 "," now elicits a warning, rather than being a token; this is more compatible with byacc. Paul Eggert 2002-11-29 08:44:40 +00:00
  • 1773ceee65 (add_param): New function. (COMMA): Remove. (declaration): Implement new rule for %parse-param and %lex-param. Paul Eggert 2002-11-29 08:44:04 +00:00
  • feeb0edaf1 (Parser Function, Pure Calling, Error Reporting, Table of Symbols): %parse-param and %lex-param now take just one argument, the declaration; the argument name is deduced from the declaration. Paul Eggert 2002-11-29 08:43:12 +00:00
  • 78c3da9e09 (reader): Remove gram_control; it wasn't being used. Paul Eggert 2002-11-29 05:59:59 +00:00
  • 4f39538148 Sync with gnulib. Paul Eggert 2002-11-28 00:42:28 +00:00
  • bb92250c78 Rename identifiers to avoid real and potential collisions. Paul Eggert 2002-11-27 18:36:41 +00:00
  • 41141c568e (STEP): Renamed from YY_STEP. All uses changed. (STRING_GROW): Renamed from YY_OBS_GROW. All uses changed. (STRING_FINISH): Renamed from YY_OBS_FINISH. All uses changed. (STRING_FREE): Renamed from YY_OBS_FREE. All uses changed. Paul Eggert 2002-11-27 18:34:14 +00:00
  • f6d03984ae (struct gram_control_s, gram_control_t): Remove. (YY_DECL): Don't use "yy" at start of local variables. All uses changed, e.g., yylloc -> loc. Paul Eggert 2002-11-27 18:33:42 +00:00
  • ad8a3efc5a (print_token_value): Renamed from yyprint. All uses changed. (YYPARSE_PARAM, YYLEX_PARAM, yycontrol): Remove. All uses changed. The name "yycontrol" violates the name space rules, and this stuff wasn't being used anyway. (input): Remove action; this stuff wasn't being used. (gram_error): Rename local variable yylloc -> loc. Paul Eggert 2002-11-27 18:33:18 +00:00
  • 831d3c996d yyprint -> print_token_value Paul Eggert 2002-11-27 18:32:12 +00:00
  • 136d65300d (_AT_CHECK_PRINTER_AND_DESTRUCTOR): yyout -> yyoutput, to avoid collision with lex macro described by Bruce Lilly in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001929.html>. Paul Eggert 2002-11-27 18:31:27 +00:00
  • 14740648d5 (b4_yysymprint_generate): yyout -> yyoutput, to avoid collision with lex macro described by Bruce Lilly in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001929.html>. Paul Eggert 2002-11-27 18:30:50 +00:00
  • 08cae37b47 Update version to 1.75d. Paul Eggert 2002-11-25 08:21:40 +00:00
  • ceed6cdce5 Regenerate. Paul Eggert 2002-11-25 08:05:09 +00:00
  • 3af4feb22f Version 1.75c. Paul Eggert 2002-11-25 07:56:44 +00:00
  • dda7aa54b6 Sync with gnulib. Paul Eggert 2002-11-25 07:50:25 +00:00
  • 16f37b35a5 (Actions after errors): Use an output format more similar to that of the Printers and Destructors test. Test the position of the ';' token too. (Printers and Destructors): Likewise. (Printers and Destructors: %glr-parser): Remove for now, to avoid unnecessarily alarming people when the test fails. Paul Eggert 2002-11-25 07:36:54 +00:00
  • 300a796626 (yyerrlab1): Move this label down, so that the parser does not discard the lookahead token if the user code invokes YYERROR. This change is required for POSIX conformance. Paul Eggert 2002-11-25 06:42:10 +00:00
  • f6cf0f6e5f Sync with gnulib. Paul Eggert 2002-11-23 07:25:41 +00:00
  • 69e16b4c5e Sync with gnulib again. Paul Eggert 2002-11-22 00:30:58 +00:00
  • 0368ae1269 Sync with gnulib. Paul Eggert 2002-11-21 19:14:24 +00:00
  • 580043087e * lib/argmatch.c, lib/argmatch.h: Sync with gnulib. Paul Eggert 2002-11-21 07:37:24 +00:00
  • 6f5db56451 Sync with gnulib. Paul Eggert 2002-11-21 07:35:58 +00:00
  • 500bbfcd81 (_AT_TEST_GLR_CXXTYPES): Do not include <assert.h>. Replace all instances of assert with abort. Paul Eggert 2002-11-21 05:28:44 +00:00
  • 63d0fb9ce4 (_AT_DATA_CALC_Y): Do not include <assert.h>. Replace all instances of assert with abort. Paul Eggert 2002-11-21 05:28:09 +00:00
  • 7a86d7eba9 (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Do not include <assert.h>. Paul Eggert 2002-11-21 05:27:28 +00:00
  • 4344c500b5 (get_color_str, get_textmode_str, get_shape_str, get_layoutalgorithm_str, get_decision_str, get_orientation_str, get_node_alignement_str, get_arrow_mode_str, get_crossing_type_str, get_view_str, get_linestyle_str, get_arrowstyle_str): Use abort rather than assert. Paul Eggert 2002-11-21 05:26:41 +00:00
  • 443594d0c4 (conflict_row, pack_vector): Use abort rather than assert. (tables_generate): Use verify rather than assert. Paul Eggert 2002-11-21 05:25:55 +00:00
  • 87aabbff99 Do not include <assert.h>. (verify): New macro. Paul Eggert 2002-11-21 05:24:53 +00:00
  • 2f82502a6f (symbol_user_token_number_set, symbol_make_alias, symbol_pack): Use abort rather than assert. Paul Eggert 2002-11-21 05:23:46 +00:00
  • fe22d5d20f (struniq_assert): Now returns void, and aborts if the assertion is false. Paul Eggert 2002-11-21 05:22:29 +00:00
  • ec14f0c83f (state_new, state_free, state_transitions_set, state_reduction_find): Use abort rather than assert. Paul Eggert 2002-11-21 05:21:35 +00:00
  • 35dcf428c9 (packgram, reader): Use abort rather than assert. Paul Eggert 2002-11-21 05:20:49 +00:00
  • a932883e41 (prepare_rules, token_definitions_output): Use abort rather than assert. Paul Eggert 2002-11-21 05:20:05 +00:00
  • b475e0cce5 (nullable_compute): Use abort rather than assert. Paul Eggert 2002-11-21 05:18:57 +00:00
  • 58a84254ef (set_goto_map, map_goto): Use abort rather than assert. Paul Eggert 2002-11-21 05:18:08 +00:00
  • 7223426a2b (trace_argmatch, report_argmatch): Use verify rather than assert. Paul Eggert 2002-11-21 05:17:21 +00:00
  • b9a0104860 (resolve_sr_conflict): Use abort rather than assert. Paul Eggert 2002-11-21 05:16:36 +00:00
  • 937fd8646f Do not include <assert.h>. (hash_lookup, hash_get_first, hash_get_next, hash_find_entry, hash_rehash, hash_insert): Likewise. Paul Eggert 2002-11-21 05:15:52 +00:00
  • b973108e1e (ARRAY_CARDINALITY): Do not bother to #undef. (ARGMATCH_CONSTRAINT): New macro. (ARGMATCH_ASSERT): Use it. Paul Eggert 2002-11-21 05:12:27 +00:00
  • 51dffcbca9 Do not include <assert.h>. (yydoAction, yyglrReduce, yysplitStack, yyresolveStates, yyresolveAction, yyprocessOneStack): Use abort rather than assert. Paul Eggert 2002-11-21 05:11:29 +00:00
  • 76ae81983c * data/glr.c (yygetLRActions): Replace yyindex' with yytable[yyindex]' to fix typo introduced in my 2002-11-09 patch. This fixes the regression with Sun ONE Studio 7 cc that I reported in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001892.html>. Paul Eggert 2002-11-19 09:33:21 +00:00
  • df38312ab0 (yygetLRActions): Replace yyindex' with yytable[yyindex]' to fix typo introduced in my 2002-11-09 patch. This fixes the regression with Sun ONE Studio 7 cc that I reported in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001892.html>. Paul Eggert 2002-11-19 07:35:29 +00:00
  • 8d8a7238ee Pacify Sun ONE Studio 7 lint. Also, rename "ParseError" to "SyntaxError" for consistency with my 2002-11-15 change. Paul Eggert 2002-11-18 20:08:57 +00:00
  • d3c4e709ff * doc/bison.texinfo (Tracing): `yyprint' shouldn't prepend a space. From Tim Van Holder. Akim Demaille 2002-11-18 09:33:22 +00:00
  • 4e8c79eb7f (_AT_DATA_CALC_Y): Make vars static instead of extern when possible. Remove unused initializations. Paul Eggert 2002-11-18 07:52:13 +00:00
  • ee16363fd2 (YYDPRINTF, YYDSYMPRINT, YYDSYMPRINTF) [!YYDEBUG]: Do not define to {}, since this breaks the common use of YYDPRINTF ((...));' if a single statement is desired (e.g. before else'). Work around GCC warnings by surrounding corresponding calls with {} if needed. (yyhasResolvedValue): Remove unused function. (yymergeOptionSets, yyresolvStack): Use `continue;' for empty loop body. (yyreportSyntaxError): Renamed from yyreportParseError. (yyrecoverSyntaxError): Renamed from yyrecoverParseError. All uses changed. Paul Eggert 2002-11-18 07:51:47 +00:00
  • 60a3dcf956 Really remove it. Akim Demaille 2002-11-16 12:36:30 +00:00
  • b0937b2259 Augment the similarity between GLR and LALR traces. * data/yacc.c (yy_stack_print, YY_STACK_PRINT, yy_reduce_print) (YY_REDUCE_PRINT): New. (yyparse): Use them. * data/glr.c (yy_reduce_print): Use YYFPRINTF, no need for YYDPRINT here. (yyglrReduce, yyrecoverParseError, yyparse): Don't report the state reached after the reduction/recovery, since... (yyparse, yyprocessOneStack): Report the state we are entering in. Akim Demaille 2002-11-16 12:32:27 +00:00
  • c5e3e51055 * src/getargs.h, src/getargs.c (trace_e, trace_args, trace_types): Add support for --trace=skeleton. * src/scan-skel.l: %option debug. Scan strings of non-@ or n instead of character by character. (scan_skel): Handle trace_skeleton. (QPUTS): New. (@output_parser_name@, @output_header_name@): `Restore'' their support (used to be M4 macros). * data/yacc.c: Quote larger chunks, a la glr.c. * data/lalr1.cc: Likewise. The header guards are no longer available, so use some other string than YYLSP_NEEDED'. Akim Demaille 2002-11-16 12:31:36 +00:00
  • 4c6cc1db75 Make the `Printers and Destructors'' test more verbose, taking yacc.c''s behavior as (possibly wrong) reference. * tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Use printf instead of fprint on stdout. Set and report the last_line of the symbols. Consistently display values and locations. Akim Demaille 2002-11-16 12:30:23 +00:00
  • 6d9e8019e1 * data/yacc.c: Avoid over-quoting of __line__ and __file__. Paul Eggert 2002-11-16 08:14:23 +00:00
  • ee41006f01 Avoid over-quoting of __line__ and __file. Paul Eggert 2002-11-16 08:13:40 +00:00
  • b25d88f6d2 * tests/actions.at (Actions after errors): New test case. Paul Eggert 2002-11-16 07:32:09 +00:00
  • 5dac0025f6 (Actions after errors): New test case. Paul Eggert 2002-11-16 07:31:35 +00:00
  • f0616f0b5c Regenerate. Paul Eggert 2002-11-15 20:58:07 +00:00
  • 6e649e659e * data/glr.c, data/lalr1.cc, data/yacc.cc, doc/bison.texinfo, src/conflicts.c, src/parse-gram.y, src/tables.c, src/tables.h, tests/action.at, tests/calc.at, tests/conflicts.at, tests/cxx-type.at, tests/regression.at: "parse error" -> "syntax error" for POSIX compatibility. "parsing stack overflow..." -> "parser stack overflow" so that code matches Bison documentation. Paul Eggert 2002-11-15 20:32:21 +00:00
  • 0f39aab92a * src/parse-gram.y (declaration): Have %parse-param and %lex-param take two BRACED_CODE, not two string_content. Free the scanner's obstack when we are done. (code_content): New. * tests/calc.at: Adjust. * doc/bison.texinfo: Adjust. Also, make sure to include the `,' for these declarations. Akim Demaille 2002-11-15 16:42:16 +00:00
  • 761c1926a1 * m4/prereq.m4: Removed the commented jm_PREREQ_HASH definition; avoids potential autoreconf problems. Akim Demaille 2002-11-15 16:30:37 +00:00
  • 0258d1661c 2002-11-15 Tim Van Holder <tim.van.holder@pandora.be> Akim Demaille 2002-11-15 09:04:37 +00:00
  • b0f98b1016 Always check the value returned by yyparse. * tests/calc.at (_AT_DATA_CALC_Y): Have main' exit with the value returned by yyparse. (_AT_CHECK_CALC_ERROR): Take the expected exit value as argument. Adjust calls. * tests/glr-regr1.at (glr-regr1.y): Have main' exit with the value returned by yyparse. Akim Demaille 2002-11-15 08:56:40 +00:00
  • edbc04c709 (AT_TEST_CPP_GUARD_H): Compile with -I., as Forte 7 C requires it, and it shouldn't hurt on other compilers. Paul Eggert 2002-11-15 01:57:23 +00:00
  • 7ec1b48eb8 * src/output.c (output_skeleton): Call xfopen instead of duplicating xfopen's body. Paul Eggert 2002-11-15 01:29:53 +00:00
  • 93ba6bf344 (output_skeleton): Call xfopen instead of duplicating xfopen's body. Paul Eggert 2002-11-15 01:28:40 +00:00
  • 970785f1a0 * data/glr.c (yyFail): Always set yyerrflag. Corrects regression on input.at test. Paul Hilfinger 2002-11-14 23:18:55 +00:00
  • cfff7583d2 Mention the bugs fixed by the latest change. Paul Eggert 2002-11-14 23:11:11 +00:00
  • 8fcc7db138 * tests/headers.at (AT_TEST_CPP_GUARD_H): Don't assume that "$CC -E foo.h" is allowed, as this doesn't work with the Portland Group compiler. Instead, use "$CC -E bar.c". Include the .h file twice in the grammar, as an extra check. Paul Eggert 2002-11-14 23:08:27 +00:00
  • 1d39f854cf (AT_TEST_CPP_GUARD_H): Don't assume that "$CC -E foo.h" is allowed, as this doesn't work with the Portland Group compiler. Instead, use "$CC -E bar.c". Include the .h file twice in the grammar, as an extra check. Paul Eggert 2002-11-14 23:08:01 +00:00
  • dda7a53e4d (Torturing the Scanner): Surround the backslash-newline tests with "#if 0", to make it less likely that we'll run into compiler bugs. Bring back solitary \ inside comment, but add a closing comment to work around HP C bug. Don't test backslash-newline in C character constant. This should fix the input.at bug reported by Nelson H. F. Beebe in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001893.html>. Paul Eggert 2002-11-14 22:53:47 +00:00
  • f32b346d84 * tests/synclines.at (AT_SYNCLINES_COMPILE): Ignore the exit status of the compiler. Calling `exit 1' is no longer needed. Reported by Nelson H. F. Beebe. Akim Demaille 2002-11-14 11:09:51 +00:00
  • 4e8d992c7d * tests/synclines.at (AT_SYNCLINES_COMPILE): Ignore the exit status of the compiler. Reported by Nelson H. F. Beebe. Akim Demaille 2002-11-14 11:07:00 +00:00
  • 9501dc6e69 * tests/atlocal.in (CPPFLAGS): We have config.h. * tests/testsuite.at (AT_DATA_GRAMMAR_PROLOGUE, AT_DATA_GRAMMAR): New. * tests/actions.at, tests/calc.at, tests/conflicts.at, * tests/cxx-type.at, tests/glr-regr1.at, tests/headers.at, * tests/regression.at, tests/torture.at: Use them for all the grammars that are to be compiled. * tests/cxx-type.at (_AT_TEST_GLR_CALC): Rename as... * tests/cxx-type.at (_AT_TEST_GLR_CXXTYPES): this. * doc/bison.texinfo (GLR Parsers): Document `inline'. Akim Demaille 2002-11-14 09:58:01 +00:00
  • 18b519c0d6 * doc/bison.texinfo: Various formatting changes (alignments in samples, additional @group/@end group, GCS in samples. Use @deffn instead of simple @table to define the directives, macros, variables etc. Akim Demaille 2002-11-14 08:32:10 +00:00
  • daa33def28 Fix some bugs reported by Albert Chin-A-Young in <http://mail.gnu.org/pipermail/bug-bison/2002-November/001881.html>. Paul Eggert 2002-11-14 01:24:12 +00:00
  • 2b42986e75 (export YYLTYPE): Don't invoke "cc a.c b.c -o c"; the HP-UX 11i C compiler chatters during compilation. Instead, invoke "cc -c a.c -o a.o; cc -c b.c -o b.o; cc a.o b.o -o c". Paul Eggert 2002-11-14 00:36:03 +00:00
  • efc6bf1b94 (Torturing the Scanner): Don't invoke "cc a.c b.c -o c"; the HP-UX 11i C compiler chatters during compilation. Instead, invoke "cc -c a.c -o a.o; cc -c b.c -o b.o; cc a.o b.o -o c". Paul Eggert 2002-11-14 00:35:27 +00:00
  • 149365be01 (Torturing the Scanner): Remove lines containing solitary backslashes, as they tickle a bug in the HP-UX 11i C compiler. Paul Eggert 2002-11-14 00:26:45 +00:00
  • 9a86cdb99b * tests/glr-regr1.at (Badly Collapsed GLR States): Avoid // comments, since they're not portable. Use GNU coding style. Paul Eggert 2002-11-14 00:04:57 +00:00
  • c240826c06 (Badly Collapsed GLR States): Avoid // comments, since they're not portable. Use GNU coding style. Paul Eggert 2002-11-13 23:20:52 +00:00
  • caf52fdfab Bump to 1.75c. Akim Demaille 2002-11-13 15:17:35 +00:00
  • 9c1e26bd3b * data/yacc.c: Leave bigger chunks of quoted text. (YYDSYMPRINTF): New. Use it to report symbol activities. * data/glr.c (YYDSYMPRINTF): New. Use it. Akim Demaille 2002-11-13 09:49:49 +00:00