Add gcc's -Wundef to test suite and fix another warning from it.
authorJoel E. Denny <jdenny@clemson.edu>
Wed, 16 Dec 2009 18:19:19 +0000 (13:19 -0500)
committerJoel E. Denny <jdenny@clemson.edu>
Wed, 16 Dec 2009 18:32:50 +0000 (13:32 -0500)
* NEWS (2.4.2): Update description of -Wundef fix.
* configure.ac (WARN_CXXFLAGS_TEST): New substitution.
(WARN_CFLAGS_TEST): New substitution.
* data/glr.c: Avoid warning about __STRICT_ANSI__.
* tests/atlocal.in (CFLAGS): Use WARN_CFLAGS_TEST instead of
WARN_CFLAGS.
(NO_WERROR_CFLAGS): Likewise.
(CXXFLAGS): Use WARN_CXXFLAGS_TEST instead of WARN_CXXFLAGS.
(cherry picked from commit a603c6e0bb8b9e79d4136ee0fd0d1bf6a7d010ef)

ChangeLog
NEWS
configure.ac
data/glr.c
tests/atlocal.in

index bdf66b7..74dacea 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,17 @@
 2009-12-16  Joel E. Denny  <jdenny@clemson.edu>
 
+       Add gcc's -Wundef to test suite and fix another warning from it.
+       * NEWS (2.4.2): Update description of -Wundef fix.
+       * configure.ac (WARN_CXXFLAGS_TEST): New substitution.
+       (WARN_CFLAGS_TEST): New substitution.
+       * data/glr.c: Avoid warning about __STRICT_ANSI__.
+       * tests/atlocal.in (CFLAGS): Use WARN_CFLAGS_TEST instead of
+       WARN_CFLAGS.
+       (NO_WERROR_CFLAGS): Likewise.
+       (CXXFLAGS): Use WARN_CXXFLAGS_TEST instead of WARN_CXXFLAGS.
+
+2009-12-16  Joel E. Denny  <jdenny@clemson.edu>
+
        * data/yacc.c: Reformat m4 a little.
 
 2009-12-16  Joel E. Denny  <jdenny@clemson.edu>
diff --git a/NEWS b/NEWS
index 02bc52a..a4d9b45 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -166,8 +166,9 @@ Bison News
 
 ** Detection of GNU M4 1.4.6 or newer during configure is improved.
 
-** Warnings from gcc's -Wundef option about undefined YYENABLE_NLS and
-   YYLTYPE_IS_TRIVIAL in C/C++ parsers are now avoided.
+** Warnings from gcc's -Wundef option about undefined YYENABLE_NLS,
+   YYLTYPE_IS_TRIVIAL, and __STRICT_ANSI__ in C/C++ parsers are now
+   avoided.
 
 ** %code is now a permanent feature.
 
index 42308f3..faba627 100644 (file)
@@ -68,6 +68,12 @@ if test "${enableval}" = yes; then
   gl_WARN_ADD([-Wshadow])
   gl_WARN_ADD([-Wstrict-prototypes])
   AC_SUBST([WARN_CFLAGS])
+  # Warnings for the test suite only.
+  gl_WARN_ADD([-Wundef], [WARN_CFLAGS_TEST])
+  WARN_CXXFLAGS_TEST="$WARN_CXXFLAGS $WARN_CFLAGS_TEST"
+  WARN_CFLAGS_TEST="$WARN_CFLAGS $WARN_CFLAGS_TEST"
+  AC_SUBST([WARN_CXXFLAGS_TEST])
+  AC_SUBST([WARN_CFLAGS_TEST])
   AC_DEFINE([lint], 1, [Define to 1 if the compiler is checking for lint.])
 fi
 
index 69bfef8..c7779d2 100644 (file)
@@ -310,7 +310,8 @@ b4_percent_code_get[]dnl
 #ifndef __attribute__
 /* This feature is available in gcc versions 2.5 and later.  */
 # if (! defined __GNUC__ || __GNUC__ < 2 \
-      || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__)
+      || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) \
+      || (defined __STRICT_ANSI__ && __STRICT_ANSI__))
 #  define __attribute__(Spec) /* empty */
 # endif
 #endif
index fb1cef6..7277a59 100644 (file)
@@ -8,11 +8,11 @@
 : ${CC='@CC@'}
 
 # We want no optimization.
-CFLAGS='@O0CFLAGS@ @WARN_CFLAGS@ @WERROR_CFLAGS@'
+CFLAGS='@O0CFLAGS@ @WARN_CFLAGS_TEST@ @WERROR_CFLAGS@'
 
 # Sometimes a test group needs to ignore gcc warnings, so it locally
 # sets CFLAGS to this.
-NO_WERROR_CFLAGS='@O0CFLAGS@ @WARN_CFLAGS@'
+NO_WERROR_CFLAGS='@O0CFLAGS@ @WARN_CFLAGS_TEST@'
 
 # We need `config.h'.
 CPPFLAGS="-I$abs_top_builddir/lib @CPPFLAGS@"
@@ -27,7 +27,7 @@ GCC='@GCC@'
 BISON_CXX_WORKS='@BISON_CXX_WORKS@'
 
 # We want no optimization with C++, too.
-CXXFLAGS='@O0CXXFLAGS@ @WARN_CXXFLAGS@ @WERROR_CFLAGS@'
+CXXFLAGS='@O0CXXFLAGS@ @WARN_CXXFLAGS_TEST@ @WERROR_CFLAGS@'
 
 # Are special link options needed?
 LDFLAGS='@LDFLAGS@'