.PHONY: update-b4-copyright update-package-copyright-year
update-b4-copyright:
- find $(srcdir)/data -type f \
+ $(AM_V_GEN)find $(srcdir)/data -type f \
| xargs $(srcdir)/build-aux/$@
@echo 'warning: src/parse-gram.[hc] may need to be regenerated.'
update-package-copyright-year:
- $(srcdir)/build-aux/$@ $(srcdir)/configure.ac
+ $(AM_V_GEN)$(srcdir)/build-aux/$@ $(srcdir)/configure.ac
gen_start_date = 2012-01-16
.PHONY: gen-ChangeLog
...
}
+* Noteworthy changes in release ?.? (????-??-??) [?]
+
+** Bug fixes
+
+*** Fix compiler attribute portability (yacc.c)
+
+ With locations enabled, __attribute__ was used unprotected.
+
+*** Fix some compiler warnings (lalr1.cc)
+
* Noteworthy changes in release 2.7 (2012-12-12) [stable]
** Bug fixes
Richard Stallman rms@gnu.org
Rob Vermaas rob.vermaas@gmail.com
Robert Anisko anisko_r@epita.fr
+Rob Conde rob.conde@ai-solutions.com
Roland Levillain roland@lrde.epita.fr
Satya Kiran Popuri satyakiran@gmail.com
Sebastian Setzer sebastian.setzer.ext@siemens.com
Troy A. Johnson troyj@ecn.purdue.edu
Tys Lefering gccbison@gmail.com
Valentin Tolmer nitnelave1@gmail.com
+Victor Khomenko victor.khomenko@newcastle.ac.uk
Vin Shelton acs@alumni.princeton.edu
W.C.A. Wijngaards wouter@NLnetLabs.nl
Wayne Green wayne@infosavvy.com
#! /bin/sh
# Print a version string.
-scriptversion=2013-01-20.16; # UTC
+scriptversion=2013-03-08.16; # UTC
# Bootstrap this package from checked-out sources.
if $bootstrap_sync; then
cmp -s "$0" "$GNULIB_SRCDIR/build-aux/bootstrap" || {
echo "$0: updating bootstrap and restarting..."
+ case $(sh -c 'echo "$1"' -- a) in
+ a) ignored=--;;
+ *) ignored=ignored;;
+ esac
exec sh -c \
'cp "$1" "$2" && shift && exec "${CONFIG_SHELL-/bin/sh}" "$@"' \
- -- "$GNULIB_SRCDIR/build-aux/bootstrap" \
+ $ignored "$GNULIB_SRCDIR/build-aux/bootstrap" \
"$0" "$@" --no-bootstrap-sync
}
fi
-## Makefile for Bison testsuite.
-
# Copyright (C) 2000-2013 Free Software Foundation, Inc.
#
# This program is free software: you can redistribute it and/or modify
m4_define([b4_symbol_printer], [b4_symbol_action([$1], [printer])])
+# b4_symbol_actions(KIND, [TYPE = yytype])
+# ----------------------------------------
+# Emit the symbol actions for KIND ("printer" or "destructor").
+# Dispatch on TYPE.
+m4_define([b4_symbol_actions],
+[m4_pushdef([b4_actions_], m4_expand([b4_symbol_foreach([b4_symbol_$1])]))dnl
+m4_ifval(m4_defn([b4_actions_]),
+[switch (m4_default([$2], [yytype]))
+ {
+ m4_defn([b4_actions_])
+ default:
+ break;
+ }dnl
+],
+[YYUSE (m4_default([$2], [yytype]));])dnl
+m4_popdef([b4_actions_])dnl
+])
+
# b4_symbol_case_(SYMBOL-NUM)
# ---------------------------
# Issue a "case NUM" for SYMBOL-NUM.
[(!!(($2) == ($3)))])])
+## ----------------- ##
+## Compiler issues. ##
+## ----------------- ##
+
+# b4_attribute_define
+# -------------------
+# Provide portability for __attribute__.
+m4_define([b4_attribute_define],
+[#ifndef __attribute__
+/* This feature is available in gcc versions 2.5 and later. */
+# if (! defined __GNUC__ || __GNUC__ < 2 \
+ || (__GNUC__ == 2 && __GNUC_MINOR__ < 5))
+# define __attribute__(Spec) /* empty */
+# endif
+#endif
+
+/* Suppress unused-variable warnings by "using" E. */
+#if ! defined lint || defined __GNUC__
+# define YYUSE(E) ((void) (E))
+#else
+# define YYUSE(E) /* empty */
+#endif
+])
+
+
## ---------##
## Values. ##
## ---------##
yymsg = "Deleting";
YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
- switch (yytype)
- {
-]b4_symbol_foreach([b4_symbol_destructor])dnl
-[ default:
- break;
- }
+ ]b4_symbol_actions([destructor])[
}]dnl
])
YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
# endif
]])dnl
-[ switch (yytype)
- {
-]b4_symbol_foreach([b4_symbol_printer])dnl
-[ default:
- break;
- }
+ b4_symbol_actions([printer])[
}
# endif
#endif
-/* Suppress unused-variable warnings by "using" E. */
-#ifdef __GNUC__
-# define YYUSE(E) ((void) (E))
-#else
-# define YYUSE(E) /* empty */
-#endif
-
#ifndef YYFREE
# define YYFREE free
#endif
# define YYLONGJMP(Env, Val) (longjmp (Env, Val), YYASSERT (0))
#endif
-/*-----------------.
-| GCC extensions. |
-`-----------------*/
-
-#ifndef __attribute__
-/* This feature is available in gcc versions 2.5 and later. */
-# if (! defined __GNUC__ || __GNUC__ < 2 \
- || (__GNUC__ == 2 && __GNUC_MINOR__ < 5))
-# define __attribute__(Spec) /* empty */
-# endif
-#endif
+]b4_attribute_define[
#ifndef YYASSERT
# define YYASSERT(Condition) ((void) ((Condition) || (abort (), 0)))
std::ostream& yyoutput = debug_stream ();
std::ostream& yyo = yyoutput;
YYUSE (yyo);
- switch (yytype)
- {
-]b4_symbol_foreach([b4_symbol_printer])dnl
-[ default:
- break;
- }
+ ]b4_symbol_actions([printer])[
}
};dnl
])
-
# b4_symbol_value_template(VAL, [TYPE])
# -------------------------------------
# Same as b4_symbol_value, but used in a template method. It makes
void error (const syntax_error& err);
private:
+ /// This class is not copyable.
+ ]b4_parser_class_name[ (const ]b4_parser_class_name[&);
+ ]b4_parser_class_name[& operator= (const ]b4_parser_class_name[&);
+
/// State numbers.
typedef int state_type;
YY_SYMBOL_PRINT (yymsg, yysym);]b4_variant_if([], [
// User destructor.
- symbol_number_type yytype = yysym.type_get ();
- switch (yytype)
- {
-]b4_symbol_foreach([b4_symbol_destructor])dnl
-[ default:
- break;
- }])[
+ b4_symbol_actions([destructor], [yysym.type_get ()])])[
}
#if ]b4_api_PREFIX[DEBUG
yyo << (yytype < yyntokens_ ? "token" : "nterm")
<< ' ' << yytname_[yytype] << " ("]b4_locations_if([
<< yysym.location << ": "])[;
- switch (yytype)
- {
-]b4_symbol_foreach([b4_symbol_printer])dnl
-[ default:
- break;
- }
+ ]b4_symbol_actions([printer])[
yyo << ')';
}
#endif
yynewstate, since the latter expects the semantical and the
location values to have been already stored, initialize these
stacks with a primary value. */
- yystack_ = stack_type (0);
+ yystack_.clear ();
yypush_ (YY_NULL, 0, yyla);
// A new symbol was pushed on the stack.
seq_.pop_back ();
}
+ void
+ clear ()
+ {
+ seq_.clear ();
+ }
+
inline
typename S::size_type
size () const
}
private:
+ stack (const stack&);
+ stack& operator= (const stack&);
/// The wrapped container.
S seq_;
};
# endif
#endif
-/* Suppress unused-variable warnings by "using" E. */
-#ifdef __GNUC__
-# define YYUSE(E) ((void) (E))
-#else
-# define YYUSE(E) /* empty */
-#endif
+]b4_attribute_define[
#if ]b4_lac_if([[1]], [[! defined yyoverflow || YYERROR_VERBOSE]])[
-Subproject commit 38e8c084b95e98c4e763df8cfc43a141aa93fc5f
+Subproject commit 076ac82d1d7f4df54630f1b4917b3c14f227f032
;
%%
-]AT_YYLEX_DEFINE(["a"])[
]AT_YYERROR_DEFINE[
+]AT_YYLEX_DEFINE(["a"])[
]AT_MAIN_DEFINE[
]])
AT_BISON_OPTION_POPDEFS
b: 'b';
d: /* nada. */;
%%
-]AT_YYLEX_DEFINE(["abc"])[
]AT_YYERROR_DEFINE[
+]AT_YYLEX_DEFINE(["abc"])[
]AT_MAIN_DEFINE[
]])
AT_BISON_OPTION_POPDEFS