Commit Graph

  • 5aca537f83 Import of 2003-06-08 libbitset <http://mail.gnu.org/archive/html/bison-patches/2003-06/msg00005.html> Paul Eggert 2003-06-01 02:47:43 +00:00
  • 5b8dfa1d7a Import of GCC head 2002-10-11 GCC_2002-10-11 Paul Eggert 2002-10-13 04:42:59 +00:00
  • 835cbc3d42 Import of GCC head 2002-10-11 Paul Eggert 2002-10-13 04:40:03 +00:00
  • fa6aa7b3dd * data/yacc.c: Reformat m4 a little for readability. * src/lalr.c (build_relations): Correct comment. Joel E. Denny 2008-05-13 05:35:33 +00:00
  • 013cb7f4e1 * djgpp/config.sed: Fixes required to run configure scripts generated by autoconf 2.62. Juan Manuel Guerrero 2008-05-12 00:58:38 +00:00
  • d30b312dfe DJGPP specific issue added. Juan Manuel Guerrero 2008-05-12 00:58:17 +00:00
  • 64f10cfe7e * HACKING: Update copyright year. Joel E. Denny 2008-05-07 23:48:30 +00:00
  • 138d4cd916 * HACKING (Release Procedure): translation@iro.umontreal.ca is now coordinator@translationproject.org. Joel E. Denny 2008-05-07 23:36:40 +00:00
  • 8f7e2e1ff2 * THANKS: Add Eric Blake. Joel E. Denny 2008-05-07 05:02:12 +00:00
  • f55efa38ef Revert prior patch, by working around autoconf regression. * tests/output.at (m4_expand): Add workaround for autoconf 2.62. ("Output file name: ("): Uncomment test. ("Output file name: )"): Likewise. Based on an idea from Noah Misch. Joel E. Denny 2008-05-07 02:53:15 +00:00
  • 2c5fa059a3 GNUmakefile: Update copyright year. Joel E. Denny 2008-04-22 08:50:17 +00:00
  • f3d88f7c7a tests/output.at: Update copyright date. Joel E. Denny 2008-04-22 03:40:19 +00:00
  • 096c9f9d64 Work-around an Autoconf 2.62 AT_SETUP bug that was not present in 2.61. Reported by Juan Manuel Guerrero at <http://lists.gnu.org/archive/html/bug-bison/2008-04/msg00011.html>. * tests/output.at ("Output file name: ("): Comment out test case for now. ("Output file name: )"): Likewise. Joel E. Denny 2008-04-22 03:37:31 +00:00
  • 0f664b89d4 * GNUmakefile: Update git-version-gen invocation so make dist succeeds. Joel E. Denny 2008-04-21 18:16:32 +00:00
  • 1cfe6375ce Update to the current gnulib CVS repository, and fix trigraph handling in Bison. * bootstrap: Update gnulib CVS repository URL. (symlink_to_dir): Encapsulate the code that guarantees the destination directory exists into... (check_dst_dir): ... this new function, and... (cp_mark_as_generated): ... reuse it here so that bootstrap doesn't fail when copying files into lib/uniwidth/. * src/output.c (prepare_symbols): When writing yytname muscles, where symbol names will be encoded in C-string literals, tell quotearg to escape trigraphs. This used to be the default in gnulib. * tests/regression.at (Token definitions): Because of the change in gnulib's quotearg behavior, string_as_id in parse-gram.y no longer escapes trigraphs in symbol names. Thus, yytname no longer has trigraphs unnecessarily doubly escaped. Update test case output. Extend test case to be sure Bison's own error messages will no longer have trigraphs in symbol names unnecessarily escaped once. Joel E. Denny 2008-04-21 06:54:39 +00:00
  • 8452fdd914 Update copyright year, and fix whitespace. Joel E. Denny 2008-04-21 01:03:21 +00:00
  • 74c52fc840 Fix make dist infinite loop reported by Juan Manuel Guerrero at <http://lists.gnu.org/archive/html/bug-bison/2008-01/msg00009.html>. * .cvsignore: Add .version. * .version.in: New. * bootstrap.conf (gnulib_modules): Add git-version-gen. * configure.ac (AC_CONFIG_FILES): Add .version. * build-aux/.cvsignore: Add git-version-gen. Joel E. Denny 2008-04-21 00:35:54 +00:00
  • 8e55b3aac2 * NEWS (2.3a+): Mention that -g now takes an argument. * doc/bison.texinfo (Bison Options): Reword -W entry a little for consistency. Update the -g and -x entries now that they take arguments. Use brackets to indicate optional arguments. * src/getargs.c (usage): Explain the relationship between arguments of long and short options more completely. Document --defines and -d separately since the former takes an argument but, for POSIX Yacc, the latter does not. (short_options): Let -W take an optional argument like --warnings. (getargs): Sort cases. Joel E. Denny 2008-03-08 20:49:57 +00:00
  • 59c5ac7244 * doc/bison.texinfo: Fix a few typos. Akim Demaille 2008-02-28 16:28:07 +00:00
  • 118d497883 * doc/bison.texinfo (Bison Options): Document -W. Based on Joel E. Denny's NEWS entry, and Automake's documentation. Akim Demaille 2008-02-28 16:18:37 +00:00
  • 7020f1e9e2 * src/getargs.c (short_options): Split and sort for readability. -g and -x take optional arguments, just like their long options. * build-aux/cross-options.pl: Use /x to make the regexp easier to understand. Fix the handling of $opt which resulted in all the argument to be considered as optional. Akim Demaille 2008-02-28 16:01:16 +00:00
  • 59da312bc7 * NEWS (2.3a+): Don't say %language is experimental. Mention Java and say its interface is experimental. * doc/bison.texinfo (Decl Summary): In the %language entry, mention Java. (Bison Options): In the -L and --language entry, mention Java. (Java Bison Interface): Say the interface is experimental. * src/getargs.c (usage): Mention -L and --language. Joel E. Denny 2008-02-23 04:26:14 +00:00
  • 2bb3ebec21 * data/xslt/xml2xhtml.xsl (xsl:template match="/"): Change footer text. Wojciech Polak 2008-02-21 17:08:18 +00:00
  • 2643e36cff (xsl:template match="/"): Change footer text. Wojciech Polak 2008-02-21 17:07:33 +00:00
  • 333e670c85 Fix impure push parser compile error reported by Bob Rossi at <http://lists.gnu.org/archive/html/help-bison/2008-02/msg00023.html>. * data/yacc.c: Clean up whitespace in the output a little. (yypstate_allocated): Define for impure push parsers regardless of whether the pull interface is also requested. * tests/push.at (Push Parsing: Multiple impure instances): Extend to check impure push parsers without the pull interface. Joel E. Denny 2008-02-20 18:23:21 +00:00
  • 798096e1de * runtime-po/POTFILES.in (push.c): Remove. Joel E. Denny 2008-02-20 00:50:00 +00:00
  • e021811add * src/parse-gram.c, src/parse-gram.h: Regenerate. Joel E. Denny 2008-02-20 00:03:43 +00:00
  • 9ca7f077a0 * data/Makefile.am (dist_pkgdata_DATA): Remove push.c. * data/push.c: Rename to... * data/yacc.c: ... this, overwriting it. * etc/bench.pl.in (bench_grammar): %pure-parser'-> %define api.pure'. %push-pull-parser' -> %define api.push_pull "both"'. Remove old yacc.c tests, and update push.c tests to yacc.c. Joel E. Denny 2008-02-17 19:55:48 +00:00
  • 42ee26bb96 * data/bison.m4 (b4_percent_code_get): Output %code block comments like "%code top" blocks' instead of %code "top" blocks'. * data/push.c: Import yacc.c changes from 2008-01-09 and 2007-08-03. Clean up whitespace in the output a little. Joel E. Denny 2008-02-17 19:11:21 +00:00
  • b1cc23c4e3 Fix documentation problems reported by Tim Josling at <http://lists.gnu.org/archive/html/bug-bison/2008-01/msg00013.html>. * NEWS (2.3a+): Mention removal of --no-parser, -n, and %no-parser. * doc/bison.texinfo (Token Decl): Token numbers are *nonnegative* integers. Explain the effect of literal string aliases on error messages. Copy token 0 documentation from the C++ skeleton documentation. Joel E. Denny 2008-02-17 02:47:53 +00:00
  • ab7f29f8f9 Accept a token number in a %left, %right, or %nonassoc for POSIX conformance. Reported by Tim Josling at <http://lists.gnu.org/archive/html/bug-bison/2008-01/msg00010.html>. * NEWS (2.3a+): Mention. * doc/bison.texinfo (Precedence Decl): Describe how literal strings and code numbers are treated by precedence declarations. * src/parse-gram.y (precedence_declaration): Use symbols.prec instead of symbols.1. (symbols.prec): New, just like symbols.1 but uses symbol.prec instead of symbol. (symbol.prec): New, just like symbol but allows INT. * src/symtab.c (symbol_user_token_number_set): Remove an aver that no longer holds. * tests/regression.at (Token number in precedence declaration): New test case. Joel E. Denny 2008-02-17 00:18:36 +00:00
  • 80d2c3adcc * THANKS: Update my email address. Juan Manuel Guerrero 2008-02-06 10:24:07 +00:00
  • f8cec99b70 * README.in: List of required packages updated. Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 10:11:52 +00:00
  • 455ff80eac * Makefile.maint: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 10:11:43 +00:00
  • c2a9899730 * fnchange.lst: Add filenames that are not 8.3 clean to the filename translation list. Juan Manuel Guerrero 2008-02-06 10:00:58 +00:00
  • e9ab707766 * testsuite.sed: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:59:26 +00:00
  • 691972493b * subpipe.h: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:59:13 +00:00
  • 988a9d670d * subpipe.c (init_subpipe): Check the environment variables TMPDIR, TMP and TEMP, in that order, to determinate where the temp files shall be created. Before trying to use the temp dir where the environment variable points to check that the dir really exists. If not default to the cwd as temp dir. Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:58:56 +00:00
  • a6580aa38b * djunpack.bat: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:58:41 +00:00
  • 21449d7337 * djgpp/config_h.sed: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:58:32 +00:00
  • 5c70666cf7 * config.site: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:58:23 +00:00
  • 38b5fb0c18 * config.sed: Add filenames that are not 8.3 clean and that must be changed. Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:58:13 +00:00
  • f3a4495d67 * config.bat: Add filenames that are not 8.3 clean and that must be changed. Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:58:03 +00:00
  • a924ef368d DJGPP specific issues. * djgpp/config.bat: Add filenames that are not 8.3 clean and that must be changed. Copyright timestamp adjusted. * djgpp/config.sed: Add filenames that are not 8.3 clean and that must be changed. Copyright timestamp adjusted. * djgpp/config.site: Copyright timestamp adjusted. * djgpp/config_h.sed: Copyright timestamp adjusted. * djgpp/djunpack.bat: Copyright timestamp adjusted. * djgpp/fnchnage.lst: Add filenames that are not 8.3 clean to the filename translation list. * djgpp/subpipe.c (init_subpipe): Check the environment variables TMPDIR, TMP and TEMP, in that order, to determinate where the temp files shall be created. Before trying to use the temp dir where the environment variable points to check that the dir really exists. If not default to the cwd as temp dir. Copyright timestamp adjusted. * djgpp/subpipe.h: Copyright timestamp adjusted. * djgpp/testsuite.sed: Copyright timestamp adjusted. Juan Manuel Guerrero 2008-02-06 09:57:35 +00:00
  • 389c8cfd1c * doc/bison.texinfo: Update Back-Cover text to reflect new GNU wording. Paul Eggert 2008-01-31 00:53:21 +00:00
  • 29b6015c38 * data/yacc.c: Update copyright for recent commit. Joel E. Denny 2008-01-19 21:19:24 +00:00
  • 5d1cfef46d * data/yacc.c (yyparse): Correct the comment when locations aren't used. Paul Eggert 2008-01-10 00:58:14 +00:00
  • e2dcf9964a 2008-01-05 Wojciech Polak <polak@gnu.org> Wojciech Polak 2008-01-05 22:29:56 +00:00
  • 3a74df7a5b data/xslt/xml2xhtml.xsl (xsl:template match="/"): Precede an XHTML document's title with the input grammar file name. Wojciech Polak 2008-01-05 22:28:44 +00:00
  • 327cd1f209 * src/parse-gram.c: Make timestamp later than parse-gram.y. Joel E. Denny 2008-01-05 20:38:06 +00:00
  • 247b8c214c * tests/local.at (AT_BISON_CHECK_XML): Fix quoting in previous patch. Joel E. Denny 2007-12-22 19:43:27 +00:00
  • da730230ce Automate regression testing of the XML/XSLT implementation. Discussed starting at <http://lists.gnu.org/archive/html/bison-patches/2007-11/msg00021.html>. * configure.ac (XSLTPROC): New substitution. * Makefile.am (maintainer-xml-check): New phony target invoking... * tests/Makefile.am (maintainer-xml-check): ... this new phony target invoking make maintainer-check with BISON_TEST_XML=1. * tests/atlocal.in (XSLTPROC): New. * tests/local.at (AT_BISON_CHECK): New macro to (1) instruct Valgrind not to report reachable memory when Bison is expected to have a non-zero exit status and (2) to compare XML/XSLT output with --graph and --report=all output for every working grammar when BISON_TEST_XML=1. (AT_BISON_CHECK_NO_XML): Likewise, but skip XML checks. (AT_BISON_CHECK_XML): New. (AT_QUELL_VALGRIND): New. * tests/testsuite.at (ORIGINAL_AT_CHECK): Remove this and... (AT_CHECK): ... don't redefine this since this was the old way to quell Valgrind. * tests/actions.at: Rewrite all AT_CHECK invocations for bison as AT_BISON_CHECK invocations. * tests/c++.at: Likewise. * tests/calc.at: Likewise. * tests/conflicts.at: Likewise. * tests/cxx-type.at: Likewise. * tests/existing.at: Likewise. * tests/glr-regression.at: Likewise. * tests/headers.at: Likewise. * tests/input.at: Likewise. * tests/java.at: Likewise. * tests/output.at: Likewise. * tests/push.at: Likewise. * tests/reduce.at: Likewise. * tests/regression.at: Likewise. * tests/sets.at: Likewise. * tests/skeletons.at: Likewise. * tests/synclines.at: Likewise. * tests/torture.at: Likewise. (Big triangle): Use AT_BISON_CHECK_NO_XML instead since this grammar tends to hang xsltproc. (Big horizontal): Likewise. Joel E. Denny 2007-12-22 18:35:03 +00:00
  • 408476bca9 In XML output, remove redundant class attribute on symbol element. * data/xslt/bison.xsl (xsl:key name="bison:symbolByName"): New. * data/xslt/xml2xhtml.xsl (xsl:template match="symbol"): Use it to look up a symbol to determine whether it's a nonterminal or terminal. * src/gram.c (rule_rhs_print_xml): Remove class attribute. * src/state.c (state_rule_lookahead_tokens_print_xml): Likewise. Joel E. Denny 2007-12-15 02:08:02 +00:00
  • d4a26c4832 * data/xslt/bison.xsl (bison:ruleNumber): Rename to... (bison:ruleByNumber): ... this for clarity. * data/xslt/xml2dot.xsl (xsl:template match="item"): Update. * data/xslt/xml2text.xsl (xsl:template match="item"): Update. (xsl:template match="reduction"): Update. (xsl:template match="item"): Update. (xsl:template match="reduction"): Update. Joel E. Denny 2007-12-08 16:05:38 +00:00
  • ef1b427325 Don't let --report affect XML output; always print all information. Discussed at <http://lists.gnu.org/archive/html/bison-patches/2007-09/msg00020.html>. * src/conflicts.c (log_resolution): Implement. * src/print-xml.c (print_core): Implement. (print_state): Implement. (print_xml): Implement. Joel E. Denny 2007-12-01 19:44:36 +00:00
  • 0f6cd9e3f8 * data/Makefile.am (dist_pkgdata_DATA): Ship and install bison.xsl. Akim Demaille 2007-11-26 10:04:15 +00:00
  • d80fb37a26 In the XML output, list useless and unused symbols and rules with the useful ones and add a "usefulness" attribute. Discussed starting at <http://lists.gnu.org/archive/html/bison-patches/2007-09/msg00017.html>. * src/gram.c (grammar_rules_partial_print_xml): Remove. (grammar_rules_print_xml): Print all rules instead of just those useful in the grammar, and add a "usefulness" attribute. * src/gram.h (grammar_rules_partial_print_xml): Remove prototype. * src/print-xml.c (print_rules_useless_in_parser): Remove. (print_grammar): Print all nonterminals instead of just useful ones, and add a "usefulness" attribute to nonterminals and terminals. (print_xml): Don't print a separate "reductions" or "rules-useless-in-parser" element. * src/reduce.c (reduce_output): Use reduce_token_unused_in_grammar. (reduce_xml): Remove. (reduce_token_unused_in_grammar): New. (reduce_nonterminal_useless_in_grammar): New. * src/reduce.h (reduce_xml): Remove prototype. (reduce_token_unused_in_grammar): Add prototype. (reduce_nonterminal_useless_in_grammar): Add prototype. * data/xslt/xml2text.xsl: Update for XML changes. * data/xslt/xml2xhtml.xsl: Update for XML changes. * tests/reduce.at (Useless Terminals): Update output. (Useless Rules): Update output. (Reduced Automaton): Update output. Joel E. Denny 2007-11-24 19:41:25 +00:00
  • 1bb2bd75f0 Accept --report-file=FILE to override the default `.output' filename. * NEWS (2.3a+): Mention. * doc/bison.texinfo (Bison Options): Add an entry. * src/files.c (compute_output_file_names): Don't override spec_verbose_file if already set. * src/getargs.c (usage): Document --report-file. (REPORT_FILE_OPTION): New anonymous enum member. (long_options): Add entry for it. (getargs): Add case for it setting spec_verbose_file. Joel E. Denny 2007-11-18 06:40:41 +00:00
  • a005a9c4dc * doc/yacc.1.in: New. * configure.ac, doc/Makefile.am: Adjust. * configure.ac (PACKAGE_COPYRIGHT_YEAR): New substitution, and new config.h symbol. Use AC_SUBST for assignments too. * src/getargs.c (version): Use PACKAGE_COPYRIGHT_YEAR. Akim Demaille 2007-11-14 13:18:44 +00:00
  • cff03fb2b9 * src/gram.c: Remove comments that duplicate comments in gram.h. Joel E. Denny 2007-11-10 03:42:37 +00:00
  • 66f0441da3 * data/bison.m4 (b4_cat): Put a newline after the end delimiter of the here document and before the EOF so that BSD's implementation of Bourne shell doesn't parse the delimiter as part of the here document. * doc/.cvsignore: Add cross-options.texi. * src/getargs.c (usage): Add a blank line after the warning categories. Joel E. Denny 2007-11-10 01:36:54 +00:00
  • d0ee410565 2007-11-08 Paolo Bonzini <bonzini@gnu.org> Paolo Bonzini 2007-11-08 09:08:45 +00:00
  • e8b1fb9b99 Remove Id: from bison.1. * doc/Makefile.am (remove_time_stamp): Include the sed invocation. (perl -0777 -pi -e 's/.PPnId): New. (.x.1): Use it to ignore the version control revision. Akim Demaille 2007-11-05 16:10:09 +00:00
  • 2f7a96b58f * build-aux/Makefile.am: Ship cross-options.pl. * doc/Makefile.am: Always refer to cross-options.texi with $(srcdir). (MAINTAINERCLEANFILES): Add it. Akim Demaille 2007-11-05 06:38:00 +00:00
  • be252c3968 * doc/Makefile.am: Complete the previous checkin. Akim Demaille 2007-11-04 21:17:55 +00:00
  • f4101aa612 Generate the long/short option cross-table. * build-aux/cross-options.pl: New. * doc/Makefile.am (cross-options.texi): New. * doc/bison.texinfo: Use it. Akim Demaille 2007-11-04 21:15:11 +00:00
  • 727a14014b Generate bison.1 using help2man. * doc/common.x, doc/bison.x: New. * doc/Makefile.am (bison.1, .x.1): New. The code is taken from autoconf-2.61/man/Makefile.am. * configure.ac: Look for help2man. Akim Demaille 2007-11-04 21:13:21 +00:00
  • 6aeb9c579b Complete --help. * src/getargs.c (usage): Document -W, make it clear that -d, -g and -x have optional arguments. Akim Demaille 2007-11-04 20:45:32 +00:00
  • d7be408576 Find sha1sum when named gsha1sum. * bootstrap (find_tool): New. ($SHA1SUM): New. Akim Demaille 2007-11-04 20:40:50 +00:00
  • 730739e41d Fix tabs. Akim Demaille 2007-11-04 20:39:50 +00:00
  • d9df47b656 Deprecate %pure-parser and add %define api.pure'. Discussed starting at <http://lists.gnu.org/archive/html/bison-patches/2007-09/msg00006.html>. * NEWS (2.3a+): Mention. * data/bison.m4 (b4_pure_if): Don't define it here. * data/c.m4 (b4_identification): Depend on individual skeletons to define b4_pure_flag, b4_push_flag, or b4_pull_flag if they use the values of the %define variables api.pure or api.push_pull. Define YYPURE, YYPUSH, and YYPULL accordingly. * data/glr.c: Define b4_pure_if based on %define api.pure' unless glr.cc has already defined b4_pure_flag. * data/push.c: Define b4_pure_if based on %define api.pure'. Remove YYPUSH and YYPULL since they're back in b4_identification again. * data/yacc.c Define b4_pure_if based on %define api.pure'. * doc/bison.texinfo (Pure Decl): Update. (Push Decl): Update. (Decl Summary): Add api.pure to %define entry. In %pure-parser entry, say it's deprecated and reference %define. (Pure Calling): Update. (Error Reporting): Update. (C++ Scanner Interface): Update. (How Can I Reset the Parser): Update. (Table of Symbols): In %pure-parser entry, say it's deprecated and reference %define. * src/getargs.c (pure_parser): Remove global variable. * src/getargs.h (pure_parser): Remove extern. * src/output.c (prepare): Don't define pure_flag muscle. * src/parse-gram.y (prologue_declaration): Implement %pure-parser as a wrapper around `%define api.pure'. * tests/calc.at (Simple LALR Calculator): Update. (Simple GLR Calculator): Update. * tests/cxx-type.at (GLR: Resolve ambiguity, pure, no locations): Update. (GLR: Resolve ambiguity, pure, locations): Update. (GLR: Merge conflicting parses, pure, no locations): Update. (GLR: Merge conflicting parses, pure, locations): Update. * tests/glr-regression.at (Uninitialized location when reporting ambiguity): Update * tests/input.at (Unused %define api.pure): New test case. * tests/local.at (_AT_BISON_OPTION_PUSHDEFS): Update definition for AT_PURE_IF and AT_PURE_AND_LOC_IF. * tests/push.at (Push Parsing: Memory Leak for Early Deletion): Update. Joel E. Denny 2007-10-29 17:36:40 +00:00
  • c373bf8bb8 %define push_pull -> %define api.push_pull. Discussed starting at <http://lists.gnu.org/archive/html/bison-patches/2007-09/msg00005.html>. * data/push.c: Expect the new name. * data/yacc.c: Likewise. * doc/bison.texinfo (Push Decl): Update. (Decl Summary): Update %define entry. (Push Parser Function): Update. (Pull Parser Function): Update. (Parser Create Function): Update. (Parser Delete Function): Update. * tests/calc.at (Simple LALR Calculator): Update. * tests/input.at (%define enum variables): Update. * tests/push.at (Push Parsing: Memory Leak for Early Deletion): Update. (Push Parsing: Multiple impure instances): Update. (Push Parsing: Unsupported Skeletons): Update. * tests/torture.at (Exploding the Stack Size with Alloca): Update. (Exploding the Stack Size with Malloc): Update. Joel E. Denny 2007-10-28 20:11:35 +00:00
  • 32f19b6b47 For the XML output's terminal element, rename @number to @token-number, and add @symbol-number. In the nonterminal element, rename @number to @symbol-number. Discussed starting at <http://lists.gnu.org/archive/html/bison-patches/2007-10/msg00040.html>. * data/xslt/xml2text.xsl (xsl:template match="terminal"): Update for renames. (xsl:template match="nonterminal"): Likewise. * data/xslt/xml2xhtml.xsl (xsl:template match="terminal"): Likewise. (xsl:template match="nonterminal"): Likewise. * src/print-xml.c (print_grammar): Implement. Joel E. Denny 2007-10-28 00:24:22 +00:00
  • 255a6b901a * data/xslt/xml2dot.xsl (xsl:template match="automaton/state"): After 2007-10-11 change, the child elements here are items not rules. (<xsl:template match="item"): New. (xsl:template match="rule"): Update for new reduced itemset. (xsl:template match="point"): Remove. (xsl:template match="empty"): For consistency with --graph, don't output "/* empty */". * data/xslt/xml2text.xsl (xsl:template match="terminal"): When invoking line-wrap, don't pass a negative value as first-line-length since this won't work with the following changes. (xsl:template name="line-wrap"): Simplify slightly. (xsl:template name="ws-search"): Eliminate recursion. * src/print_graph.c (print_core): Don't print a reduction's lookahead set next to an item whose dot is not at the end of the RHS even if it happens to be associated with the same rule. Joel E. Denny 2007-10-21 15:34:08 +00:00
  • 31984206a7 Add %define lr.keep_unreachable_states. * NEWS (2.3a+): Mention it in the entry for unreachable state removal. * doc/bison.texinfo (Decl Summary): Mention it in the %define entry. * src/main.c (main): Implement it. * tests/conflicts.at (Unreachable States After Conflict Resolution): Extend to test it, and fix a typo. Joel E. Denny 2007-10-19 06:14:44 +00:00
  • 88c7874756 * NEWS: Add entry for recent .output file lookahead set fix. * doc/bison.texinfo (Understanding): Remove a bogus lookahead set in the example .output text. * tests/regression.at (Extra lookahead sets in report): Improve wording of comments. Joel E. Denny 2007-10-19 02:46:21 +00:00
  • b7a7016204 2007-10-17 Wojciech Polak <polak@gnu.org> Wojciech Polak 2007-10-17 18:13:53 +00:00
  • 36c48187a6 (xsl:template match="terminal"): Use new attribute names. (xsl:template match="nonterminal"): Likewise. Wojciech Polak 2007-10-17 18:12:20 +00:00
  • cd4a9a598f src/print-xml.c (print_grammar): Renamed <terminal> and <nonterminal> attributes: "type" to "number" and "symbol" to "name". Wojciech Polak 2007-10-17 18:11:03 +00:00
  • a0de5091fc * doc/bison.texinfo (Bison Options): Add entry for --print-datadir. (Option Cross Key): Likewise. Joel E. Denny 2007-10-17 04:35:35 +00:00
  • 4c20d18dc1 * src/print-xml.c (print_core): Remove item set redundancy. * data/xslt/bison.xsl (bison:ruleNumber): New key. Improve processing time. Suggested by Joel E. Denny. * data/xslt/xml2dot.xsl (xsl:template name="escape"): Write xsl:param "required" attribute as comment. * data/xslt/xml2text.xsl (xsl:template match="item"): New. (xsl:template match="rule"): Support new reduced itemset. (xsl:template match="point"): Remove. * data/xslt/xml2xhtml.xsl: Likewise. Wojciech Polak 2007-10-11 16:40:08 +00:00
  • 95134bc179 (xsl:template match="item"): New. (xsl:template match="rule"): Support new reduced itemset. (xsl:template match="point"): Remove. Wojciech Polak 2007-10-11 16:38:42 +00:00
  • 85a6eb13f8 (xsl:template name="escape"): Write xsl:param "required" attribute as comment. Wojciech Polak 2007-10-11 16:37:59 +00:00
  • fc8b70bf14 (bison:ruleNumber): New key. Improve processing time. Suggested by Joel E. Denny. Wojciech Polak 2007-10-11 16:37:38 +00:00
  • 25f6da67d3 (print_core): Remove item set redundancy. Wojciech Polak 2007-10-11 16:36:49 +00:00
  • f506ad1cbf * src/getargs.c (version): Update copyright year. Joel E. Denny 2007-10-09 08:57:14 +00:00
  • 21f1b063d8 Make xml2dot.xsl and --graph produce the same output. * data/xslt/xml2dot.xsl (xsl:template match="rule"): Use a &#10;' instead of a \n'. That is, don't add escapes yet or they'll be doubly escaped later. (xsl:template name="output-node"): Use the new escape template instead of the string-replace template directly. (xsl:template name="output-edge"): Likewise. (xsl:template name="escape"): New, escapes backslashes and newlines in addition to quotation marks. * src/graphviz.c (start_graph, output_node, output_edge): Add whitespace to output for legibility. Joel E. Denny 2007-10-09 08:48:43 +00:00
  • 793fbca50a Improve C++ namespace support. Discussed starting at <http://lists.gnu.org/archive/html/help-bison/2007-09/msg00016.html>. * data/c++.m4: (b4_namespace_ref, b4_namespace_open, b4_namespace_close): New macros that interpret the %define variable "namespace" so its value can contain "::" to indicate nested namespaces. * data/glr.cc (b4_namespace): Don't define, and replace all uses with the above macros. * data/lalr1.cc (b4_namespace): Likewise. * data/location.cc (b4_namespace): Likewise. * doc/bison.texinfo (Decl Summary): Move %define push_pull' entry inside a new table in the general %define entry. Document %define namespace' there as well. Point the %name-prefix entry to it since it explains it more completely in the case of C++. (C++ Bison Interface): Mention %define namespace' instead of %name-prefix. (Table of Symbols): Remove the %define push_pull' entry. The %define entry suffices. * tests/c++.at (Relative namespace references): New test case. (Absolute namespace references): New test case. (Syntactically invalid namespace references): New test case. * tests/input.at (C++ namespace reference errors): New test case. Joel E. Denny 2007-10-08 10:09:07 +00:00
  • 35b8730d01 Add syncline support and location accessor to internal %define interfaces. * data/bison.m4 (b4_percent_define_get_loc): New. (b4_percent_define_get_syncline): New. (b4_percent_define_flag_if): Use b4_percent_define_get_loc. (b4_percent_define_default): Record defining location as line 1 rather than 0 for the sake of synchronizing #line's, and define b4_percent_define_syncline(VARIABLE). (b4_percent_define_check_values): Use b4_percent_define_get_loc. * src/muscle_tab.c (muscle_syncline_grow): New. (muscle_code_grow): Use muscle_syncline_grow. (muscle_percent_define_insert): Use muscle_percent_define_get_loc, and define b4_percent_define_syncline(VARIABLE). (muscle_percent_define_get_loc): New. (muscle_percent_define_get_syncline): New. (muscle_percent_define_flag_if): Use muscle_percent_define_get_loc, and remove some unused variables. (muscle_percent_define_default): Record defining location as line 1 rather than 0 for the sake of synchronizing #line's, and define b4_percent_define_syncline(VARIABLE). (muscle_percent_define_check_values): Use muscle_percent_define_get_loc. * src/muscle_tab.h (muscle_percent_define_get_loc): Prototype. (muscle_percent_define_get_syncline): Prototype. * tests/skeletons.at (%define Boolean variables: invalid skeleton defaults): Update output for location change. (Complaining during macro argument expansion): Extend to test b4_percent_define_get_loc and b4_percent_define_get_syncline errors. Joel E. Denny 2007-10-08 04:00:13 +00:00
  • 7dc4a6940c Fix some error-reporting macro bugs. * data/bison.m4 (b4_cat): New. (b4_error, b4_error_at): Use b4_cat to send error directives directly to stdout so they don't become arguments to other macros. Update comments and add examples. (b4_warn, b4_warn_at, b4_complain, b4_complain_at): Update comments and add examples. (b4_fatal, b4_fatal_at): Likewise, and invoke m4_exit(1) immediately after printing the error directive so that M4 doesn't report subsequent problems that are induced by this problem. * src/scan-skel.l: Recognize @` digraph outside of directive arguments instead of just in them. Recognize @\n in both places. Both expand to the empty string. Needed by b4_cat. * tests/skeletons.at (Complaining during macro argument expansion): New test case. (Fatal errors make M4 exit immediately): New test case. Joel E. Denny 2007-10-08 01:53:08 +00:00
  • d4bd229569 Implement --print-datadir. * src/getargs.c (usage): Mention. (PRINT_DATADIR_OPTION): New anonymous enum member. (long_options): Add entry for it. (getargs): Add case for it calling compute_pkgdatadir. * src/output.c (output_skeleton): Encapsulate data directory computation from here... (prepare): ... and from here... (compute_pkgdatadir): ... into this new function. * src/output.h (compute_pkgdatadir): Prototype. Joel E. Denny 2007-10-05 02:54:33 +00:00
  • 34cdeddfa5 * src/print-xml.c (escape_bufs): New static global variable replacing... (xml_escape_n): ... the static local variable buf here. (print_xml): Free memory for escape_bufs. * src/reduce.c (reduce_xml): XML-escape terminal symbol tags. Joel E. Denny 2007-09-29 22:36:38 +00:00
  • d782395d52 Replace %push-parser' and %push-pull-parser' with %define push_pull "push"' and %define push_pull "both"'. `%define push_pull "pull"' is the default. * doc/bison.texinfo (Push Decl, Push Parser Function, Pull Parser Function, Parser Create Function, Parser Delete Function): Update declarations. (Decl Summary, Table of Symbols): Replace %push-parser and %push-pull-parser entries with a %define push_pull entry. * data/bison.m4 (b4_percent_define_check_values): New macro. (b4_pull_if, b4_push_if, b4_use_push_for_pull_if): Move these definitions... * data/c.m4 (b4_identification): ... and the YYPUSH and YYPULL cpp definitions... * data/push.c: ... to here and compute them from the value of the %define variable push_pull. * data/c-skel.m4: Instead of choosing the push.c skeleton for push parsing requests here... * data/yacc.c: ... hack this to switch to push.c any time b4_use_push_pull_flag or the %define variable push_pull is set. This will go away when we mv push.c yacc.c. * data/c++-skel.m4, data/glr.c, data/java-skel.m4: Don't report that push parsing is not supported since unused %define variables are reported anyway. * src/getargs.c, src/getargs.h (pull_parser, push_parser): Remove. * src/muscle_tab.h (muscle_percent_define_check_values): Update comments for consistency with b4_percent_define_check_values. * src/output.c (prepare): Don't insert b4_pull_flag and b4_push_flag muscles. * src/parse-gram.y (PERCENT_PUSH_PARSER, PERCENT_PUSH_PULL_PARSER): Remove. (prologue_declaration): Remove %push-parser and %push-pull-parser rules. * src/scan-gram.l (%push-parser, %push-pull-parser): Remove rules. * tests/calc.at: Update declarations. * tests/input.at (%define enum variables): New test case. * tests/push.at (Push Parsing: Memory Leak for Early Deletion): Update declaration. (Push Parsing: Multiple impure instances): Update declaration. (Push Parsing: Unsupported Skeletons): New test case. * tests/torture.at (Exploding the Stack Size with Alloca): Update declaration. (Exploding the Stack Size with Malloc): Update declaration. Joel E. Denny 2007-09-25 05:47:27 +00:00
  • 3f999f78be Updated Wojciech Polak 2007-09-24 19:35:08 +00:00
  • ca2cc7aeec data/Makefile.am (xsltdir): New variable. (dist_xslt_DATA): Add xslt/*.xsl files. Wojciech Polak 2007-09-24 19:32:02 +00:00
  • bbeff19643 Transform XML into XHTML. Wojciech Polak 2007-09-24 19:31:08 +00:00
  • 9fb1f8d8f7 Transform XML into plain text. Wojciech Polak 2007-09-24 19:30:49 +00:00
  • dc6025ffeb Transform XML into DOT. Wojciech Polak 2007-09-24 19:30:17 +00:00
  • a4f75309f2 * src/conflicts.c (log_resolution): Fix indenting bugs I introduced. Problem reported by Wojciech Polak. * src/print-xml.c (xml_puts): Work even if LEVEL exceeds INT_MAX/2. (xml_printf): Undo change I made on 21 September; that is, indent 2 spaces, not 1. Paul Eggert 2007-09-24 06:34:44 +00:00
  • ad5feac4e2 Pacify ./configure --enable-gcc-warnings. * src/print-xml.c, src/print-xml.h (xml_puts): Make third argument char const *' instead of char *'. * src/state.c (state_rule_lookahead_tokens_print_xml): Remove unused local variable `sep'. Joel E. Denny 2007-09-24 01:41:35 +00:00