Commit Graph
100 Commits
Author SHA1 Message Date
Paul Eggert 258b75caaa Destructor cleanups and regularization among the three skeletons.
* NEWS: Document the behavior changes.
* data/glr.c (yyrecoverSyntaxError): Don't bother to pop the
stack before failing, as the cleanup code will do it for us now.
* data/lalr1.cc (yyerrlab): Likewise.
* data/glr.c (yyparse): Pop everything off the stack before
freeing it, so that destructors get called properly.
* data/lalr1.cc (yyreturn): Likewise.
* data/yacc.c (yyreturn): Pop and destroy the start symbol, too.
This is more consistent.
* doc/bison.texinfo (Destructor Decl): Mention more reasons
why destructors might be called.  1.875 -> 2.1.
(Destructor Decl, Decl Summary, Table of Symbols):
Some English-language cleanups for %destructor.
* tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR):
Add output line for destructor of start symbol.
* tests/calc.at (AT_CHECK_CALC): Add one to line counts,
because of that same extra output line.
2005-07-19 06:56:44 +00:00
Paul Eggert 6088a2a04d Regenerate. 2005-07-19 03:38:13 +00:00
Paul Eggert 4cf31ef8e7 (_AT_TEST_GLR_CXXTYPES): Don't try to have yyerror return 0, now that
it returns void.
2005-07-19 03:32:40 +00:00
Paul Eggert 1a05945136 * NEWS: Document minor wording changes in diagnostics of
Bison-generated parsers.
* data/glr.c (yyMemoryExhausted): Renamed from yyStackOverflow.
Remove unused formals.  All uses changed.
(yyreportAmbiguity): "ambiguity detected" -> "syntax is ambiguous".
(yyparse): Rename yyoverflowlab to yyexhaustedlab.
* data/yacc.c (yyparse): "parser stack overflow" -> "memory exhausted".
Rename yyoverflowab to yyexhaustedlab.
When memory exhaustion occurs during syntax-error reporting,
report it separately rather than in a single diagnostic; this
eases translation.
* doc/bison.texinfo (Memory Management): Renamed from Stack Overflow.
(Memory Exhausted): Renamed from Parser Stack Overflow.
Revamp wording slightly to prefer "memory exhaustion".
* tests/actions.at: "parser stack overflow" -> "memory exhausted".
2005-07-19 00:05:57 +00:00
Paul Eggert a778f668a1 Add bison-runtime.pot; remove bison-runtime.old.pot. 2005-07-18 22:25:54 +00:00
Paul Eggert 8c27717915 Add Makefile.in.in. 2005-07-18 22:22:49 +00:00
Paul Eggert 97460c7864 * data/c.m4 (b4_yysymprint_generate): Use YYFPRINTF, not fprintf. 2005-07-18 22:16:44 +00:00
Paul Eggert 9662b51284 Update copyright. 2005-07-18 22:14:15 +00:00
Paul Eggert 30757c8c93 Add i18n support to the GLR skeleton. Partially fix the C++
skeleton; a C++ expert needs to finish this.  Remove debugging
msgids; there's little point to having them translated, since they
can be understood only by someone who can read the
(English-language) source code.

Generate runtime-po/bison-runtime.pot automatically, so that we
don't have to worry about garbage getting in that file.  We'll
make sure after the next official release that old msgids don't
get lost.  See
<http://lists.gnu.org/archive/html/bison-patches/2005-07/msg00119.html>.

* runtime-po/Makefile.in.in, runtime-po/bison-runtime.pot: Remove.
Now auto-generated.
* PACKAGING: Don't claim that Gawk, GCC, Perl use this method yet.
Fix typos in explanations of the runtime file.
* bootstrap: Change gettext keyword from YYI18N to YY_.
Use standard Makefile.in.in in runtime-po, since we'll arrange
for backward-compatible bison-runtime.po files in a different way.
* data/glr.c (YY_): New macro, from yacc.c.
(yyuserAction, yyreportAmbiguity, yyreportSyntaxError, yyparse):
Translate messages intended for users.
(yyreportSyntaxError): Change "virtual memory" to "memory" to match
the wording in the other skeletons.  We don't know that the memory
is virtual.
* data/lalr1.cc (YY_): Renamed from _.  All uses changed.
Use same method that yacc.c uses.
Don't translate debugging messages.
(yy::yyreport_syntax_error): Put in a FIXME for the i18n stuff;
it doesn't work (yet), and requires C++ expertise to fix.
* data/yacc.c (YY_): Renamed from YY18N.  All uses changed.
Move defn to a more logical place, to be consistent with other
skeletons.
Don't translate debugging messages.
Don't assume line numbers fit in unsigned int; use unsigned long fmts.
* doc/bison.texinfo: Mention <libintl.h>.  Change glibc cross reference
to gettext cross reference.  Add indexing terms.  Mention YYENABLE_NLS.
* runtime-po/POTFILES.in: Add data/glr.c, data/lalr1.cc.
2005-07-18 22:10:15 +00:00
Paul Eggert ac8c5689f8 Fix yyerror / yylex test glitches noted by [email protected].
* tests/cxx-type.at (_AT_TEST_GLR_CXXTYPES): Have yyerror return
void, not int.
* tests/glr-regression.at (Badly Collapsed GLR States):
Likewise.
(Improper handling of embedded actions and dollar(-N) in GLR parsers):
yylex should return 0 at EOF rather than aborting.
2005-07-18 18:39:01 +00:00
Paul Eggert 6100a9aa2e Improve tests for stack overflow in GLR parser.
Problem reported by [email protected].
* data/glr.c (struct yyGLRStack): Remove yyerrflag member.
All uses removed.
(yyStackOverflow): Just longjmp, but with value 2 so that caller
can handle the problem.
(YYCHK1): Use goto (a la yacc.c) rather than setting a flag.
(yyparse): New local variable yyresult to record the result.
Use result of setjmp to set it, rather than storing itinto
struct.
(yyDone): Remove label.
(yyacceptlab, yyabortlab, yyoverflowlab, yyreturn): New labels,
to mimic yacc.c.  Do not discard lookahead if it's EOF (possible
if YYABORT is used).
* tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Exit with
yyparse status; put status > 1 into diagnostic.
Check that status==2 works.
* tests/calc.at, tests/cxx-type.at, tests/glr-regression.at:
Use exit status 3 for failure to open (which shouldn't happen).
2005-07-18 18:09:40 +00:00
Paul Eggert 67fd79c427 * tests/conflicts.at (%nonassoc and eof): Don't exit with status
1 on syntax error; just let yyparse do its thing.
* tests/glr-regression.at (Badly Collapsed GLR States): Likewise.
* tests/torture.at (AT_DATA_STACK_TORTURE): Likewise.
(Exploding the Stack Size with Alloca):
(Exploding the Stack Size with Malloc):
Expect exit status 2, not 1, since the parser is supposed to blow
its stack.  Problem reported by [email protected].
2005-07-18 06:14:16 +00:00
Paul Eggert 15f40952f7 * data/glr.c (yyparse): Don't assume that the initial calls
to YYMALLOC succeed; in that case, yyparse incorrectly returned 0.
Print a stack-overflow message and fail instead.
Initialize the line-number information before creating the stack,
so that the stack-overflow message can report line zero safely.
2005-07-17 07:30:38 +00:00
Paul Eggert c70fdfcd20 More changes to pacify C++ compilers. 2005-07-14 23:57:45 +00:00
Paul Eggert e2688cd96e * data/glr.c (YYSTACKEXPANDABLE): Don't define if already defined.
(yyuserMerge): Provide a default case if b4_mergers is empty.
* tests/cxx-type.at (_AT_TEST_GLR_CXXTYPES): Define YYSTACKEXPANDABLE.
* tests/glr-regression.at
(Improper handling of embedded actions and dollar(-N) in GLR parsers):
YYSTYPE is char *, not char const *, so that strcpy ($$, ...) works.
2005-07-14 23:15:47 +00:00
Paul Eggert 1beb0b24f3 * tests/glr-regression.at (Improper merging of GLR delayed action
sets): Declare yylex before using it.
2005-07-14 21:42:40 +00:00
Paul Eggert a22ff96f32 * tests/Makefile.am (maintainer-check-g++): Remove bogus
test for valgrind; valgrind is independent of g++.
(maintainer-check-posix): Add _POSIX2_VERSION=200112, to check
for compatibility with POSIX 1003.1-2001 (if running coreutils).
* tests/cxx-type.at (_AT_TEST_GLR_CXXTYPES): Port to stricter C++.
Use a destructor, so that we can expand the stack.  Change
YYSTYPE to char * so that we can free it.  Cast result of malloc.
2005-07-14 17:27:01 +00:00
Paul Eggert 31d7addbf5 Update copyright. 2005-07-14 16:34:15 +00:00
Paul Eggert f32c66b5f4 GXX -> CXX 2005-07-14 16:33:40 +00:00
Paul Eggert 71206cce8e (maintainer-check-g++): Fix a stray
$(GXX) that escaped the renaming of GXX to CXX.
2005-07-14 16:33:28 +00:00
Paul Eggert d741bd1bfd * data/glr.c (yyuserAction): Fix uninitialized variable that caused
a valgrind failure.  Problem reported by [email protected].
2005-07-14 05:08:03 +00:00
Paul Eggert 0410a6e0cc * PACKAGING: New file, suggested by Bruno Haible and taken from
similar wording in gettext's PACKAGING file.
* NEWS: Mention PACKAGING.
* Makefile.am (EXTRA_DIST): Add PACKAGING.
2005-07-13 18:16:30 +00:00
Paul Eggert a7db4add01 Bison-generated C parser -> Bison-generated parser 2005-07-13 17:35:34 +00:00
Paul Eggert eb520e4cc0 Don't imply the latest change was in 2.0a. 2005-07-12 23:40:43 +00:00
Paul Eggert baf785db2e * NEWS: Document recent i18n improvements. 2005-07-12 23:37:16 +00:00
Paul Eggert f7ab6a5010 * bootstrap: Get runtime translations into runtime-po.
Create runtime-po files automatically, if possible.
* configure.ac: Invoke BISON_I18N, so that we eat our own dog food.
* data/yacc.c: Rewrite inclusion of <libintl.h> so that ENABLE_NLS
does not infringe on the user's name space.
(YYENABLE_NLS): Renamed from ENABLE_BISON_NLS.
* doc/bison.texinfo (Internationalization): Revamp the English
and Texinfo syntax a bit, to try to make it clearer.
(Bison Options, Option Cross Key): Mention --print-localedir.
* m4/bison-i18n.m4 (BISON_I18N): Rename ENABLE_BISON_NLS to
YYENABLE_NLS.  Quote a bit more.
* runtime-po/.cvsignore: New file.
* runtime-po/Makefile.in.in (mostlyclean): Remove *.old.pot.
* runtime-po/Rules-quot: Remove; now created by bootstrap.
* runtime-po/quot.sed: Likewise.
* runtime-po/boldquot.sed: Likewise.
* runtime-po/[email protected]: Likewise.
* runtime-po/[email protected]: Likewise.
* runtime-po/insert-header.sin: Likewise.
* runtime-po/remove-potcdate.sin: Likewise.
* runtime-po/Makevars: Likewise.
* runtime-po/LINGUAS: Likewise.
* runtime-po/de.po: Likewise; we will rely on the translation project
to maintain this, so "bootstrap" should get it.
* src/getarg.s (PRINT_LOCALEDIR_OPTION): Let the C compiler determine
its value.
* src/main.c (main): Bind the bison-runtime domain, too.

* data/yacc.c: Include <libintl.h> when NLS is enabled.
(YYI18N): Renamed from _. Use dgettext when NLS is enabled.
* po/POTFILES.in: Remove autogenerated file src/parse-gram.c.
* runtime-po: New directory.
* runtime-po/Makefile.in.in: New file, copied from po/, with modified
$(DOMAIN).pot-update rule, so that old messages are never dropped.
* runtime-po/Rules-quot: New file, copied from po/.
* runtime-po/quot.sed: Likewise.
* runtime-po/boldquot.sed: Likewise.
* runtime-po/[email protected]: Likewise.
* runtime-po/[email protected]: Likewise.
* runtime-po/insert-header.sin: Likewise.
* runtime-po/remove-potcdate.sin: Likewise.
* runtime-po/Makevars: New file.
* runtime-po/POTFILES.in: New file.
* runtime-po/LINGUAS: New file.
* runtime-po/bison-runtime.pot: New file.
* runtime-po/de.po: New file.
* m4/bison.m4: New file.
* Makefile.am (SUBDIRS): Add runtime-po.
(aclocaldir, aclocal_DATA): New variables.
* configure.ac: Add AC_CONFIG_FILES of runtime-po/Makefile.in.
Define aclocaldir.
* src/getargs.c (usage): Document --print-localedir option.
(PRINT_LOCALEDIR_OPTION): New enum item.
(long_options): Add --print-localedir option.
(getargs): Handle --print-localedir option.
* doc/bison.texinfo (Bison Parser): Remove paragraph about _().
(Internationalization): New section.
2005-07-12 23:28:54 +00:00
Paul Eggert e054b19038 * doc/bison.texinfo (Mystery Conflicts): Add reference to DeRemer
and Pennello's paper.
2005-07-11 22:29:55 +00:00
Paul Eggert 5f6da1c0f8 Regenerate. 2005-07-09 08:27:02 +00:00
Paul Eggert 407d4a75bb * data/yacc.c (yyparse): Undo previous patch. Instead,
set yylsp[0] and yyvsp[0] only if the initial action
sets yylloc and yylval, respectively.
2005-07-09 08:26:29 +00:00
Paul Eggert 34160ec4ec * data/yacc.c (yyparse): In the initial action, set
yylsp[0] and yyvsp[0] rather than yylloc and yylval.
This avoids the use of undefined variables if the initial
action does not set yylloc and/or yylval.
2005-07-09 07:14:18 +00:00
Paul Eggert 6770ae09d3 Add *.ll. 2005-07-07 23:18:32 +00:00
Paul Eggert b34d96c1c3 * examples/calc++/calc++-driver.cc, examples/calc++/calc++-driver.hh:
* examples/calc++/calc++-scanner.ll, examples/calc++/calc++.cc:
Remove from CVS.  These files are automatically generated.
* examples/extexi: Clarify that this file is now part of Bison,
not GNU M4, and that it works with any POSIX-compatible Awk.
* examples/calc++/Makefile.am (run_extexi): Remove; not used.
($(calc_extracted)): Renamed from $(calc_sources_extracted),
so that we also get calc++-parser.yy.  Geneate it.
Use $(AWK), not gawk, since any conforming Awk will do.
Put comment before action, since older 'make' can't handle comment
in action.
$(BUILT_SOURCES): List all built sources, not just some of them.
$(MAINTAINERCLEANFILES): Remove *.stamp, and all built sources.
$($(srcdir)/calc++-parser.stamp): Work even if POSIXLY_CORRECT.
$($(calc_sources_generated)): Remove unnecessary test for existence
of target.  (This had a shell syntax error anyway; a stray "x".)
(calc_extracted): List $(srcdir)/calc++-parser.yy, not
calc++-parser.yy.
* examples/.cvsignore, examples/calc++/.cvsignore: New files.
2005-07-07 23:16:46 +00:00
Paul Eggert c3d5a4a783 * bootstrap (gnulib_modules): Add gettext, now that it's no longer
implied by the other modules.
2005-07-07 16:06:50 +00:00
Paul Eggert fd2df2ede4 * data/glr.c (yyFail): Drastically simplify; since the format argument
never had any % directives, we can simply pass it to yyerror.
(yyparse): Use "t a; a=b;" rather than "t a = b;" when a will
be modified later, as that is the usual style in glr.c.
2005-07-06 04:12:23 +00:00
Paul Eggert 63cb01d656 Rewrite GLR parser to catch more buffer overrun, storage exhaustion,
and size overflow errors.
* data/glr.c: Include <stdio.h> etc. after user prolog, not before,
in case the user prolog sets feature-test macros like _GNU_SOURCE.
(YYSIZEMAX): New macro.
(yystpcpy): New function, taken from yacc.c.
(struct yyGLRStack.yyspaceLeft): Now size_t, not int.
(yyinitGLRStack, yyfreeGLRstack): Remove unnecessary forward decls,
so that we don't have to maintain their signatures.
(yyFail): Check for buffer overflow, by using vsnprintf rather
than vsprintf.  Allocate a bigger buffer if possible.
Report an error if buffer allocation fails.
(yyStackOverflow): New function.
(yyinitStateSet, yyinitGLRStack): Return a boolean indicating whether
the initialization was successful.  It might fail if storage was
exhausted.
(yyexpandGLRStack): Add more checks for storage allocation failure.
Use yyStackOverflow to report failures.
(yymarkStackDeleted, yyglrShift, yyglrShiftDefer, yydoAction):
(yysplitStack, yyprocessOneStack, yyparse, yypstack):
Don't assume stack number fits in int.
(yysplitStack): Check for storage allocation failure.
(yysplitStack, yyprocessOneStack): Add pure_formals, so that we
can print diagnostics on storage allocation failure.  All callers
changed.
(yyresolveValue): Use yybool for boolean.
(yyreportSyntaxError): Check for size-calculation overflow.
This code is taken from yacc.c.
(yyparse): Check for storage allocation errors when allocating
the initial stack.
2005-07-05 21:58:37 +00:00
Paul Eggert 0925ebb4fa * data/yacc.c (malloc, free) [defined __cplusplus]: Wrap inside extern "C" {}. 2005-06-09 20:44:28 +00:00
Paul Eggert 73e561d51a Regenerate. 2005-05-30 17:25:18 +00:00
Paul Eggert 3062864d2c Fix infringement on user name space reported by Janos Zoltan Szabo. 2005-05-30 17:23:52 +00:00
Paul Eggert 681c331d2c (yyparse): strlen -> yystrlen. 2005-05-30 17:22:55 +00:00
Paul Eggert 4b43d40257 Regenerate. 2005-05-27 23:22:19 +00:00
Paul Eggert bedf57f515 Fix infringement on user name space reported by Bruno Haible.
* data/yacc.c (YYSIZE_T): Define first, so that later decls can use it.
Prefer GCC's __SIZE_TYPE__ if available, so that we don't infringe on
the user's name space.
(alloca): Include <stdlib.h> to get it, if it's not built in.
(YYMALLOC, YYFREE): Define only if needed.
(malloc, free): Declare, but only if needed, as this infringes on
the user name space.
2005-05-27 23:22:10 +00:00
Paul Eggert 4d1801f1a8 Fix BeOS, FreeBSD, MacOS porting problems reported by Bruno Haible.
* lib/bitset.c (bitset_print): Don't assume size_t can be printed
with %d format.
* lib/ebitset.c (min, max): Undef before defining.
* lib/vbitset.c (min, max): Likewise.
* lib/subpipe.c (create_subpipe): Save local variables in case
vfork clobbers them.
* tests/synclines.at (AT_SYNCLINES_COMPILE): Add support for the
error message syntax used by gcc-4.0.
2005-05-25 19:48:00 +00:00
Paul Eggert 85ac3861e7 * README: Mention m4 1.4.3. Remove obsolete advice about
Sun Forte Developer 6 update 2, VMS, and MS-DOS.
2005-05-23 23:19:55 +00:00
Paul Eggert b94a9e1ed1 * bootstrap: Remove workaround for problem I encountered with
gettext 0.14.1; it seems to be fixed now.
2005-05-23 18:43:08 +00:00
Paul Eggert 009ce67dbe Version 2.0a. 2005-05-23 06:48:08 +00:00
Paul Eggert f2a97c6294 * src/files.c: Include "stdio-safer.h"; this fixes a typo in
the previous change.
2005-05-22 17:52:12 +00:00
Paul Eggert c8775f9398 Various maintainer cleanups.
* .cvsignore: Add a.exe, a.out, b.out,, conf[0-9]*, confdefs*,
conftest*, for benefit of CVS commands run at the same time as
"configure".  Add build-aux, since "bootstrap" now creates it and
its subfiles.
* Makefile.cfg (move_if_change): Remove.
* Makefile.maint: Remove the update stuff; we now use "bootstrap".
(ftp-gnu, www-gnu, move_if_change, local_updates, update):
(po_repo, do-po-update, po-update, wget_files, get-targets):
(config.guess-url_prefix, config.sub-url_prefix):
(ansi2knr.c-url_prefix, texinfo.tex-url_prefix):
(standards.texi-url_prefix, make-stds.texi-url_prefix, taget, url):
($(get-targets), cvs-files, automake_repo, wget-update, cvs-update):
Remove.
* configure.ac (AC_CONFIG_AUX_DIR): Change from config to build-aux;
this is now the recommended name.
* config/.cvsignore: Remove config.guess, config.rpath, config.sub,
depcomp, install-sh, mdate-sh, missing, mkinstalldirs, texinfo.tex,
ylwrap.  These files now go into build-aux.
* config/move-if-change: Remove.
* config/prev-version.txt: Bump from 1.75 to 2.0.
2005-05-22 17:45:28 +00:00
Paul Eggert 3ea5f0ec81 * bootstrap: Add stdio-safer, unistd-safer modules.
Remove m4/glibc2.m4 (introduced by latest gnulib, but
we don't need it).
* lib/.cvsignore: Add dup-safer.c, fd-safer.c,
fopen-safer.c, stdio-safer.h, unistd-safer.h.
* lib/subpipe.c: Include "unistd-safer.h".
(create_subpipe): Make sure all the newly-created
file descriptors are > 2, so that diagnostics don't
get sent down them (which might cause Bison to hang, in theory).
* m4/.cvsignore: Add stdio-safer.m4, unistd-safer.m4.
* src/files.c (xfopen): Use fopen_safer, not fopen.
2005-05-22 08:04:06 +00:00
Paul Eggert 51c30d2144 * data/lalr1.cc (yy::]b4_parser_class_name[::parse): Port
yesterday's yacc.c fix.
2005-05-22 07:31:41 +00:00
Paul Eggert ad7458633d (yy::]b4_parser_class_name[::parse): Port
yesterday's yacc.c fix.
2005-05-22 07:31:24 +00:00
Paul Eggert 010f91c341 Update copyright date. 2005-05-22 06:26:13 +00:00
Paul Eggert bd134904da Regenerate. 2005-05-22 05:20:48 +00:00
Paul Eggert cea1469d47 Fix a destructor bug reported by Wolfgang Spraul in
<http://lists.gnu.org/archive/html/bug-bison/2005-05/msg00042.html>.
* data/yacc.c (yyabortlab): Don't call destructor, and
don't set yychar to EMPTY.
(yyoverflowlab): Don't call destructor.
(yyreturn): Call destructor, if yychar is neither YYEOF nor YYEMPTY.
* tests/calc.at (AT_CHECK_CALC): Expect one fewer output lines,
since we no longer output the message "discarding lookahead token
end of input ()".
2005-05-22 05:20:01 +00:00
Paul Eggert 0fb669f9d6 Update FSF postal mail address. 2005-05-14 06:49:48 +00:00
Paul Eggert 51f4735e22 * tests/local.at (AT_COMPILE_CXX): Treat LDFLAGS like AT_COMPILE does.
Problem reported by Ralf Menzel.
2005-05-11 19:38:24 +00:00
Paul Eggert 7768896a25 Regenerate. 2005-05-02 04:56:45 +00:00
Paul Eggert 80ce3401e9 * tests/actions.at: Test that stack overflow invokes destructors.
From Marcus Holland-Moritz.
* data/yacc.c (yyerrlab): Move the code that destroys the stack
from here....
(yyreturn): to here.  That way, destructors are called properly
even if the stack overflows, or the user calls YYACCEPT or
YYABORT.  Stack-overflow problem reported by Marcus Holland-Moritz.
(yyoverflowlab): Destroy the lookahead.
2005-05-02 04:52:33 +00:00
Paul Eggert b9c9f76197 (YYSTACK_ALLOC_MAXIMUM): Add more-descriptive comment. 2005-04-25 03:14:22 +00:00
Paul Eggert 9f666b5106 Regenerate. 2005-04-17 08:14:52 +00:00
Paul Eggert c19683bb19 * tests/input.at (Torturing the Scanner): Adjust to lack of quotes
in diagnostics.
2005-04-17 08:13:37 +00:00
Paul Eggert ba20a26459 (Torturing the Scanner): Adjust to lack of quotes in diagnostics. 2005-04-17 08:12:56 +00:00
Paul Eggert 72f000b088 * NEWS: Bison-generated C parsers no longer quote literal strings
associated with tokens.
* src/output.c (prepare_symbols): Don't escape strings,
since users don't want to see C escapes.
* tests/calc.at (AT_CHECK_CALC): Adjust to lack of quotes
in diagnostics.
* tests/regression.at (Token definitions, Web2c Actions): Likewise.
2005-04-17 08:07:15 +00:00
Paul Eggert 1094323fe4 * tests/torture.at (AT_INCREASE_DATA_SIZE): Skip the test if
the data size is known to be too small and we can't increase it.
2005-04-16 08:11:52 +00:00
Paul Eggert f79b4f5ce1 (AT_INCREASE_DATA_SIZE): Skip the test if
the data size is known to be too small and we can't increase it.
2005-04-16 08:11:33 +00:00
Paul Eggert 2ce37586de Regenerate. 2005-04-16 06:34:20 +00:00
Paul Eggert ca407bdf9d * src/parse-gram.y: Include quotearg.h.
(string_as_id): Quote $1 before using it as a key, since the
lexer no longer quotes it for us.
(string_content): Don't strip quotes, since lexer no longer
quotes it for us.
* src/scan-gram.l: Include quotearg.h.
("\""): Omit quote.
("'"<SC_ESCAPED_CHARACTER>): Quote symbol before using it as
a key, since the rest of the lexer doesn't quote it.
* src/symtab.c (symbol_get): Don't quote symbol; caller does it now.
* tests/regression.at (Token definitions): Check for backslashes
in token strings.
2005-04-16 06:32:51 +00:00
Paul Eggert 506ffb1f74 (YYSTACK_ALLOC_MAXIMUM): New macro.
(YYSIZE_T): Define to unsigned long int when using an older compiler.
(yyparse): Revamp code to generate long syntax error message, to
make it easier to translate, and to avoid problems with arithmetic
overflow.  Change "virtual memory" to "memory" in diagnostic, since
we don't know whether the memory is virtual.
2005-04-16 06:25:03 +00:00
Paul Eggert ffc9da3a52 Regenerate. 2005-04-14 00:09:11 +00:00
Paul Eggert 1ce590705a * NEWS: Bison-generated C parsers now use the _ macro to
translate strings.
* data/yacc.c (_) [!defined _]: New macro.
All English strings wrapped inside this macro.
* doc/bison.texinfo (Bison Parser): Document _.
* po/POTFILES.in: Include src/parse-gram.c, since it now
includes translateable strings that parse-gram.y doesn't.
2005-04-14 00:08:56 +00:00
Paul Eggert a749a69501 Fix aliases bug reported by Tim Van Holder. 2005-04-12 22:38:43 +00:00
Paul Eggert e8fd72d5bb (symbol_make_alias): Call symbol_type_set,
reverting the 2004-10-11 change to this function.
(symbol_check_alias_consistency): Don't call symbol_type_set
if the type name is already correct.
2005-04-12 22:38:20 +00:00
Paul Eggert e59adf8f04 (Typed symbol aliases): New test. 2005-04-12 22:35:53 +00:00
Paul Eggert 8fb1053bfe * tests/regression.at (Token definitions): Don't use a token named c. 2005-03-26 01:13:13 +00:00
Paul Eggert 4f136612d9 (Token definitions): Don't use a token named c, as that generates a
"#define c ..." that runs afoul of buggy stdlib.h that uses the
identifier c as a member of struct drand48_data.
2005-03-26 01:12:59 +00:00
Paul Eggert ff498c4aed * bootstrap: Change translation URL. 2005-03-21 22:36:41 +00:00
Paul Eggert 65211d70bc * tests/local.at (AT_COMPILE, AT_COMPILE_CXX): Don't put options
after operands; POSIX says this isn't portable for the c99 command.
2005-03-21 06:58:31 +00:00
Paul Eggert 72d848c21d (AT_COMPILE, AT_COMPILE_CXX): Don't put options
after operands; POSIX says this isn't portable for the c99 command.
2005-03-21 06:58:11 +00:00
Paul Eggert 9577fb1f47 * tests/glr-regression.at (glr-regr2a.y): Try to dump core
immediately if a data overrun has occurred.
2005-03-18 20:57:37 +00:00
Paul Eggert f508a6a0d6 (glr-regr2a.y): Try to dump core
immediately if a data overrun has occurred; this may help us track
down what may be a spurious failure on MacOS.
2005-03-18 20:57:19 +00:00
Paul Eggert a2599d0fc2 Respond to problems reported by [email protected]. 2005-03-17 23:42:57 +00:00
Paul Eggert 727e8b0bde Use "trap - 0" rather than the unportable "trap 0". 2005-03-17 23:41:38 +00:00
Paul Eggert 4b3017faf2 Regenerate. 2005-03-17 19:22:00 +00:00
Paul Eggert 78b178f716 * src/vcg.h: Comment fix.
* src/vcg_defaults.h: Parenthesize macro bodies to make them safe.
(G_CMAX): Change to -1 instead of INT_MAX.
2005-03-17 19:20:15 +00:00
Paul Eggert baf073c6c5 (yyparse): Omit spaces before #line.
Problem reported by [email protected].
2005-03-17 19:19:44 +00:00
Paul Eggert 7296e729ce * src/tables.c (state_number_to_vector_number): Put it inside an
"#if 0".
2005-03-15 23:53:47 +00:00
Paul Eggert 7cf96b1a9e (state_number_to_vector_number): Put it inside an
"#if 0", since it's not currently used.
2005-03-15 23:53:27 +00:00
Paul Eggert 05ac60f348 * src/output.c (escaped_output): Renamed from
escaped_file_name_output, since we now use it for symbol tags as
well.  All uses changed.
(symbol_destructors_output, symbol_printers_output):
Escape symbol tags too.
Problem reported by Matyas Forstner in
<http://lists.gnu.org/archive/html/bug-bison/2005-03/msg00009.html>.

* src/muscle_tab.c (muscle_code_grow): Don't quote numbers; it's
not needed.
* src/output.c (user_actions_output, token_definitions_output,
symbol_destructors_output, symbol_printers_output): Likewise.
* src/reader.c (prologue_augment): Likewise.
* src/scan-gram.l (handle_action_dollar, handle_action_at): Likewise.
2005-03-07 06:41:39 +00:00
Paul Eggert 080e734812 (output_edge): Don't quote linestyle arg. 2005-03-07 06:35:31 +00:00
Paul Eggert 7eb453acd5 * doc/bison.texinfo (Semantic Tokens): Fix scoping problem in
example, reported by Derek M Jones.
2005-03-01 00:41:58 +00:00
Paul Eggert 3a4f411faa (Semantic Tokens): Fix scoping problem in
example, reported by Derek M Jones.  Also, make the example even
more outrageous, to better illustrate how bad the problem is.
2005-03-01 00:41:33 +00:00
Paul Eggert 4c04c52a9d * doc/bison.texinfo (Mfcalc Symtab): Correct the prototype for putsym. 2005-02-24 17:24:23 +00:00
Paul Eggert a730d142be (Mfcalc Symtab): Correct the prototype for putsym. 2005-02-24 17:23:57 +00:00
Paul Eggert a61e1620e7 * doc/bison.texinfo: minor typo fixes 2005-02-23 09:15:27 +00:00
Paul Eggert e4f85c39b2 (Language and Grammar): some -> same
(Epilogue): int he -> in the
2005-02-23 09:15:09 +00:00
Paul Eggert 9ec93868c1 Fix $ in test names. 2005-02-08 00:37:43 +00:00
Paul Eggert d46c3fc694 Renamed from "Invalid \$n", to work around an Autoconf bug with dollar
signs in test names.
2005-02-07 23:14:55 +00:00
Paul Eggert d6d67dbdcb (Improper handling of embedded actions and dollar(-N) in GLR parsers):
Renamed from "Improper handling of embedded actions and $-N in GLR
parsers", work around an Autoconf bug with dollar signs in test names.
2005-02-07 23:14:22 +00:00
Paul Eggert 73ce7e7e63 * src/vcg.c (output_graph): G_VIEW -> normal_view. 2005-01-28 22:07:09 +00:00
Paul Eggert f8b30d02ec (output_graph): G_VIEW -> normal_view in case someone
wants to redefine G_VIEW.
2005-01-28 22:06:55 +00:00
Paul Eggert 2e72b98ed8 * src/vcg.c (get_view_str): Remove case for normal_view. 2005-01-27 22:03:21 +00:00