From ec78bdab6d3de74968b9a6bbe2d88d0f3317a6d9 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Thu, 4 Oct 2012 09:07:42 +0200 Subject: [PATCH] lalr1.cc: fix test suite portability Reported by Rob Vermaas' Hydra build farm on x86_64-darwin 10.2.0 with G++ 4.6.3. * tests/headers.at (Several parsers): Include AT_DATA_SOURCE_PROLOGUE in the files to compile. * data/location.cc: Do not include twice string and iostream (once by position.hh, and then by location.hh). * README-hacking (Typical errors): Some hints for other maintainers. --- README-hacking | 13 +++++++++++++ THANKS | 1 + data/location.cc | 2 -- tests/headers.at | 1 + 4 files changed, 15 insertions(+), 2 deletions(-) diff --git a/README-hacking b/README-hacking index bb91ac06..50669568 100644 --- a/README-hacking +++ b/README-hacking @@ -168,6 +168,19 @@ decide whether to update. ** make check Use liberally. +** Typical errors +If the test suite shows failures such as the following one + + .../bison/lib/getopt.h:196:8: error: redefinition of 'struct option' + /usr/include/getopt.h:54:8: error: previous definition of 'struct option' + +it probably means that some file was compiled without +AT_DATA_SOURCE_PROLOGUE. This error is due to the fact that our -I pick up +gnulib's replacement headers, such as getopt.h, which will go if config.h +was not included first. + +See tests/local.at for details. + ** make maintainer-check-valgrind This target uses valgrind both to check bison, and the generated parsers. diff --git a/THANKS b/THANKS index 09d6736b..f742e8f8 100644 --- a/THANKS +++ b/THANKS @@ -93,6 +93,7 @@ R Blake blakers@mac.com Raja R Harinath harinath@cs.umn.edu Ralf Wildenhues Ralf.Wildenhues@gmx.de Richard Stallman rms@gnu.org +Rob Vermaas rob.vermaas@gmail.com Robert Anisko anisko_r@epita.fr Satya Kiran Popuri satyakiran@gmail.com Sebastian Setzer sebastian.setzer.ext@siemens.com diff --git a/data/location.cc b/data/location.cc index 0673f4c2..92b6d096 100644 --- a/data/location.cc +++ b/data/location.cc @@ -159,8 +159,6 @@ b4_copyright([Locations for Bison parsers in C++], ]b4_cpp_guard_open([b4_dir_prefix[]location.hh])[ -# include -# include # include "position.hh" ]b4_namespace_open[ diff --git a/tests/headers.at b/tests/headers.at index 91fdb950..8e70a7eb 100644 --- a/tests/headers.at +++ b/tests/headers.at @@ -249,6 +249,7 @@ for h in *.h *.hh do # No shell expansion with AT_DATA. cat >$h.cc <