- [enableval=no])
-if test "${enableval}" = yes; then
- BISON_WARNING(-Werror)
- AC_SUBST([WERROR_CFLAGS], [$WARNING_CFLAGS])
- WARNING_CFLAGS=
- BISON_WARNING(-Wall)
- BISON_WARNING(-W)
- BISON_WARNING(-Wbad-function-cast)
- BISON_WARNING(-Wcast-align)
- BISON_WARNING(-Wcast-qual)
- BISON_WARNING(-Wformat)
- BISON_WARNING(-Wmissing-declarations)
- BISON_WARNING(-Wmissing-prototypes)
- BISON_WARNING(-Wnested-externs)
- BISON_WARNING(-Wshadow)
- BISON_WARNING(-Wstrict-prototypes)
- BISON_WARNING(-Wwrite-strings)
- AC_DEFINE([lint], 1, [Define to 1 if the compiler is checking for lint.])
+ [enable_gcc_warnings=no])
+if test "$enable_gcc_warnings" = yes; then
+ gl_WARN_ADD([-Werror], [WERROR_CFLAGS])
+ AC_SUBST([WERROR_CFLAGS])
+ gl_WARN_ADD([-Wall])
+ gl_WARN_ADD([-Wextra -Wno-sign-compare])
+ gl_WARN_ADD([-Wcast-align])
+ gl_WARN_ADD([-Wcast-qual])
+ gl_WARN_ADD([-Wformat])
+ gl_WARN_ADD([-Wpointer-arith])
+ gl_WARN_ADD([-Wwrite-strings])
+ AC_SUBST([WARN_CXXFLAGS], [$WARN_CFLAGS])
+ # The following warnings are not suitable for C++.
+ gl_WARN_ADD([-Wbad-function-cast])
+ gl_WARN_ADD([-Wmissing-declarations])
+ gl_WARN_ADD([-Wmissing-prototypes])
+ 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])
+ gl_WARN_ADD([-pedantic], [WARN_CFLAGS_TEST])
+ AC_SUBST([WARN_CXXFLAGS_TEST], ["$WARN_CXXFLAGS $WARN_CFLAGS_TEST"])
+ AC_SUBST([WARN_CFLAGS_TEST], ["$WARN_CFLAGS $WARN_CFLAGS_TEST"])