Akim Demaille
1505e8bb78
version 2.6
...
* NEWS: Record release date.
v2.6
2012-07-19 15:24:23 +02:00
Akim Demaille
58c7e5ee2c
maint: prepare for release 2.6
...
* NEWS: here.
2012-07-19 15:21:32 +02:00
Akim Demaille
ad6b775fc5
maint: post-release administrivia
...
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2012-07-18 18:33:25 +02:00
Akim Demaille
5d614dfa8c
version 2.5.91
...
* NEWS: Record release date.
2012-07-18 18:19:32 +02:00
Akim Demaille
858c700fc0
maint: prepare NEWS.
2012-07-18 18:19:12 +02:00
Akim Demaille
c30717cafa
maint: fix spaces.
...
* build-aux/Makefile.am: here.
2012-07-18 17:56:30 +02:00
Akim Demaille
0e98a81e00
tests: adjust to case where the C compiler is actually a C++ compiler
...
* tests/atlocal.in (CC_IS_CXX): New.
* tests/headers.at (Several parsers): Use it.
2012-07-18 09:17:31 +02:00
Akim Demaille
d5c20d1a36
tests: fix dependencies
...
* tests/Makefile.am: we need atconfig and atlocal to be up to date
when calling testsuite.
2012-07-18 09:17:31 +02:00
Akim Demaille
e6ae99fe75
doc: fix Texinfo command
...
* doc/bison.texi: In parens, use @pxref.
2012-07-18 09:17:31 +02:00
Akim Demaille
bcbbf65486
maint: Valgrind on OS X.
...
* configure.ac (VALGRIND_PREBISON): New.
* tests/Makefile.am (maintainer-check-valgrind): Use it.
* etc/darwin11.4.0.supp: New.
* configure.ac, etc/Makefile.am: Use it.
* configure.ac: Disable Valgrind on Mac OS X.
* README-hacking: Explain why.
2012-07-18 09:17:15 +02:00
Akim Demaille
1aa9fa823b
tests: be sure that backups are safe.
...
* tests/local.at (at_save_special_files): here.
2012-07-17 14:47:35 +02:00
Akim Demaille
321b8117a6
maint: dead comment.
...
* etc/README: here.
2012-07-17 14:47:35 +02:00
Akim Demaille
e4828e2384
tests: refactor for legibility.
...
* tests/local.at (AT_BISON_CHECK_WARNINGS, AT_BISON_CHECK_WARNINGS_):
New.
2012-07-17 14:47:34 +02:00
Akim Demaille
a122efad8a
tests: refactor the bison invocations.
...
* tests/local.at (m4_null_if, AT_BISON_CHECK_): New.
2012-07-17 14:47:34 +02:00
Akim Demaille
15ffba51b0
maint: fix syntax-check ignore patterns.
...
* cfg.mk: here.
2012-07-17 12:14:55 +02:00
Akim Demaille
ea6a2d96db
gnulib: update
2012-07-17 09:49:57 +02:00
Akim Demaille
ae63f0e8e2
gnulib: update.
...
* gnulib: Update so that gitlog-to-changelog support --srcdir.
* Makefile.am: Use it.
2012-07-16 20:40:18 +02:00
Akim Demaille
41c11ce484
gnulib: update
...
* bootstrap, build-aux/.gitignore, gnulib, m4/.gitignore: update.
2012-07-10 16:07:32 +02:00
Akim Demaille
a59a6ddef4
maint: update release instructions
...
* README-hacking: here.
2012-07-06 10:21:39 +02:00
Akim Demaille
aca4ddc75d
maint: post-release administrivia
...
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2012-07-05 16:29:06 +02:00
Akim Demaille
47977a7e74
version 2.5.90
...
* NEWS: Record release date.
2012-07-05 16:20:44 +02:00
Akim Demaille
813f7d3482
build: fix gen-ChangeLog call.
...
* Makefile.am: Be sure to catch errors, and fix option name
2012-07-05 16:16:10 +02:00
Akim Demaille
7a9e6d65ea
gnulib: update.
...
* gnulib/build-aux/do-release-commit-and-tag: Fix.
2012-07-05 15:24:34 +02:00
Akim Demaille
916f26b65a
tests: fix SKIP_IF for Java.
...
* tests/local.at (AT_JAVA_COMPILE): here.
2012-07-05 14:27:09 +02:00
Akim Demaille
32ae07efde
api.prefix: incompatible with %name-prefix.
...
* data/bison.m4: Make it incompatible.
* tests/input.at: Check that it is.
2012-07-05 12:41:16 +02:00
Akim Demaille
ad60e80f3d
api.prefix: strengthen the tests and fix push-parsers.
...
* tests/calc.at: Check api.prefix in addition to %name-prefix.
* tests/headers.at: Check push parsers and pure interface.
* tests/local.at: Use YYLTYPE renamed.
* data/yacc.c (b4_declare_yyparse_push_): Handle api.prefix.
* doc/bison.texi: Style changes.
2012-07-05 12:41:15 +02:00
Akim Demaille
2a824fae30
skeletons: style changes.
...
* data/bison.m4: Define default values after having defined
the support macros.
Kill a dead comment.
2012-07-05 12:41:09 +02:00
Akim Demaille
c242519127
NEWS: minor changes.
...
* NEWS: style changes.
2012-07-05 12:41:09 +02:00
Akim Demaille
e358222ba8
api.prefix: improve the documentation for YYDEBUG.
...
* doc/bison.texi: Explain how api.prefix is applied to YYDEBUG.
2012-07-05 12:41:08 +02:00
Akim Demaille
9dcb193aeb
gnulib: update.
...
* bootstrap, gnulib: Update.
* cfg.mk (syntax-check): Don't check "error" usage in bison.texi.
2012-07-05 11:13:47 +02:00
Akim Demaille
faff3bef5b
tests: headers.at: strengthen.
...
* tests/headers.at (Several headers): Be stricter when checking
the exported macros.
2012-07-04 12:24:13 +02:00
Akim Demaille
53ab797db7
glr.cc: do not override C++ definitions by C macros.
...
* data/glr.c: here.
* data/glr.cc: Fix overquotation.
* tests/headers.at: Comment changes.
2012-07-04 12:24:13 +02:00
Akim Demaille
426903aa75
YYLLOC_DEFAULT: factor, and don't export it in headers.
...
* data/c++.m4, data/c.m4 (b4_yylloc_default_define): New.
* data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c: Use it.
* data/glr.cc: Do not define YYLLOC_DEFAULT in the header file,
but in the implementation one.
2012-07-04 12:24:13 +02:00
Akim Demaille
9104636b03
api.prefix: do not use #define to handle YYSTYPE_IS_TRIVIAL etc.
...
The following mixture is insane:
#define YYSTYPE_IS_TRIVIAL PREFIX_STYPE_IS_TRIVIAL
#if (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)
since, of course YYSTYPE_IS_TRIVIAL is defined. Instead we could
define YYSTYPE_IS_TRIVIAL as PREFIX_STYPE_IS_TRIVIAL only when the
later is defined, but let's avoid stacking CPP on top of M4: rather, use
#if (defined PREFIX_STYPE_IS_TRIVIAL && PREFIX_STYPE_IS_TRIVIAL)
* data/glr.c, data/yacc.c: Use YYSTYPE_IS_TRIVIAL, YYSTYPE_IS_DECLARED,
YYLTYPE_IS_TRIVIAL and YYLTYPE_IS_DECLARED under their api.prefix-renamed
name.
2012-07-04 12:24:13 +02:00
Akim Demaille
1168b32295
tests: portability fixes.
...
Reported by Hydra.
* tests/headers.at (Several headers): Be sure to include config.h
in the files to compile.
2012-07-04 12:24:13 +02:00
Akim Demaille
771dc64324
c++: fewer #includes in the headers.
...
* data/lalr1.cc: Define YY_NULL in the *.cc file, it is not needed
in the header.
* data/location.cc: iosfwd suffices.
2012-07-04 12:24:13 +02:00
Akim Demaille
a7385a21ce
glr.cc: formatting changes.
...
* data/glr.cc: here.
2012-07-04 12:24:13 +02:00
Akim Demaille
b142cfd128
tests: more logs.
...
* tests/headers.at (Several parsers): Here.
2012-07-04 12:24:13 +02:00
Akim Demaille
5f108727a1
api.prefix: also rename YYDEBUG.
...
The testsuite in master has shown weird errors for the "Mulitple
Parsers" tests: the caller of p5.parse() received some apparently
random value, while tracing p5.parse() showed that the function was
consistently returning 0.
It happens when mixing several parser headers, some generated without
%debug, others with. In particular the C++ parser was generated with
%debug, i.e., with:
#ifndef YYDEBUG
# define YYDEBUG 1
#endif
and compiled separatedly. Yet, its header was included after the one
of another parser, this time without %debug, i.e., with
#ifndef YYDEBUG
# define YYDEBUG 0
#endif
in its header. As a result, the parser was compiled with YYDEBUG set,
but its header was used without. Since the layout of the objects are
then completely different, boom.
Therefore, do not change the value of YYDEBUG. Rather, use it as a
default value for <API.PREFIX>DEBUG.
* data/c.m4 (b4_YYDEBUG_define): New.
(b4_declare_yydebug): Rename as...
(b4_yydebug_declare): this, for consistency.
* data/glr.c, data/glr.cc, data/lalr1.cc, data/yacc.c: Use it.
* NEWS: Document it.
2012-07-04 12:24:12 +02:00
Akim Demaille
242cc08e8d
NEWS: spell check.
...
* NEWS: here.
2012-07-02 09:26:22 +02:00
Akim Demaille
4b3847c3c0
api.prefix.
...
* data/c.m4 (b4_api_prefix, b4_api_PREFIX): New.
(b4_prefix, b4_union_name, b4_token_enums, b4_declare_yylstype): Use them.
* data/glr.c, data/yacc.c, data/glr.cc, data/lalr1.cc: Use them to change
the prefix of exported preprocessor symbols.
* src/getargs.c (usage): Ditto.
* tests/headers.at (Several parsers): New.
* tests/local.at (AT_API_PREFIX): New.
AT_YYSTYPE, AT_YYLTYPE): Adjust.
* doc/bison.texi (Multiple Parsers): Move documentation of %name-prefix to...
(Table of Symbols): here.
(Multiple Parsers): Document api.prefix.
(%define Summary): Point to it.
Use @code for variable names.
(Bison Options): -p/--name-prefix are obsoleted.
* NEWS: Announce api.prefix.
2012-06-29 17:40:42 +02:00
Akim Demaille
087dcd7868
tests: use the generalized default yylex.
...
* tests/actions.at, tests/glr-regression.at, tests/regression.at: here.
2012-06-28 15:01:36 +02:00
Akim Demaille
95361618de
tests: AT_YYERROR_DEFINE: prepare for list of ints.
...
* tests/local.at (AT_YYERROR_DEFINE): Don't add quotes, check their
presence to detect char/int types.
* tests/actions.at, tests/conflicts.at, tests/glr-regression.at,
* tests/push.at, tests/regression.at: Adjust.
2012-06-28 15:01:36 +02:00
Akim Demaille
694af10cb7
skeletons: no longer define YYLSP_NEEDED.
...
* data/c.m4, data/glr.cc: here.
* NEWS, TODO: Adjust.
2012-06-27 10:03:23 +02:00
Akim Demaille
258cddbc36
c++: do not export YYTOKEN_TABLE and YYERROR_VERBOSE.
...
* src/output.c (prepare_symbols): Do not define b4_token_table.
(prepare): Define b4_token_table_flag.
* data/bison.m4 (b4_token_table_if): New.
Arm it when error-verbose.
* data/glr.c, data/yacc.c (YYTOKEN_TABLE): Remove.
Use m4.
* data/lalr1.cc: Likewise.
(YYERROR_VERBOSE): Remove.
* NEWS, doc/bison.texi: Document this.
2012-06-27 10:03:21 +02:00
Akim Demaille
9bcffa0c13
maint: use *.texi.
...
This is more consistent with the other packages, and Automake-NG
supports only *.texi.
* doc/bison.texinfo: Rename as...
* doc/bison.texi: this.
* doc/Makefile.am, examples/calc++/Makefile.am: Adjust.
2012-06-26 16:55:23 +02:00
Akim Demaille
a32a2d57a5
tests: do not output m4 set up.
...
* tests/local.at (AT_BISON_OPTION_PUSHDEFS, AT_BISON_OPTION_POPDEFS):
Use a diversion to avoid outputting comments etc.
Removes 17k lines from testsuite (10% of the number of lines).
2012-06-26 14:07:34 +02:00
Akim Demaille
8d6c1b5e85
tests: use the generic yyerror function.
...
* tests/actions.at (_AT_CHECK_PRINTER_AND_DESTRUCTOR): Factor.
Use AT_YYERROR_DEFINE.
Therefore, instead of using stdout, use and check stderr.
* tests/glr-regression.at (Uninitialized location when reporting ambiguity):
Use AT_YYERROR_DEFINE.
2012-06-26 13:55:50 +02:00
Akim Demaille
77519a7d18
tests: use assert instead of plain abort.
...
* tests/actions.at, tests/calc.at, tests/conflicts.at,
* tests/cxx-type.at, tests/glr-regression.at, tests/input.at,
* tests/named-refs.at, tests/regression.at, tests/torture.at,
* tests/local.at:
Prefer assert to abort.
2012-06-26 13:55:50 +02:00
Akim Demaille
0e16927b48
tests: improve the generic yylex implementation.
...
* tests/local.at (AT_YYSTYPE, AT_YYLTYPE): New.
(AT_YYLEX_FORMALS): Use them.
(AT_YYLEX_DEFINE): Be independent of the location implementation.
2012-06-26 13:55:49 +02:00