public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [CONFIGUREY PATCH]: place -Wcast-qual and -Wc++-compat under -Werror
@ 2008-06-27  1:26 Kaveh R. GHAZI
  2008-06-29  5:52 ` Ian Lance Taylor
  0 siblings, 1 reply; 3+ messages in thread
From: Kaveh R. GHAZI @ 2008-06-27  1:26 UTC (permalink / raw)
  To: gcc-patches; +Cc: dnovillo, gdr, iant, richard.guenther

I'm far enough along that I can do this now. :-) This patch moves
-Wcast-qual and -Wc++-compat under -Werror like the rest of our warnings.
There are a few nits left, however getting this in will prevent warning
regressions.

This patch relies on the following remaining warning cleanup patches:
targets: http://gcc.gnu.org/ml/gcc-patches/2008-06/msg01680.html
ada: http://gcc.gnu.org/ml/gcc-patches/2008-06/msg01710.html
toplev stragglers: http://gcc.gnu.org/ml/gcc-patches/2008-06/msg01711.html

Bootstrapped on x86_64-unknown-linux-gnu, okay for mainline once the above
are installed?

		Thanks,
		--Kaveh

(Note: there are a couple of ada and libgcc warnings left, but they don't
conflict with -Werror so we can get this in now and treat those
separately.)


2008-06-26  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>

	* Makefile.in (CXX_COMPAT_WARN, cxx_compat_warn): Delete.
	(bitmap.o-warn, dominance.o-warn): New.
	* configure.ac (cxx_compat_warn): Delete.
	(loose_warn): Add -Wcast-qual and -Wc++-compat.
	* system.h: Remove #pragma diagnostic for -Wcast-qual and
	-Wc++-compat.
	* configure: Regenerate.

cp:
	* Make-lang.in (cp-warn): Delete $(CXX_COMPAT_WARN).

java:
	* Make-lang.in (java/jcf-io.o-warn): New.


diff -rup orig/egcc-SVN20080626/gcc/Makefile.in egcc-SVN20080626/gcc/Makefile.in
--- orig/egcc-SVN20080626/gcc/Makefile.in	2008-06-26 02:02:09.000000000 +0200
+++ egcc-SVN20080626/gcc/Makefile.in	2008-06-27 02:21:20.000000000 +0200
@@ -160,10 +160,8 @@ coverageexts = .{gcda,gcno}
 # STRICT_WARN are the additional warning flags to
 # apply to the back end and the C front end, which may be compiled
 # with other compilers.
-# CXX_COMPAT_WARN are C++ source compatibility warnings.
 LOOSE_WARN = @loose_warn@
 STRICT_WARN = @strict_warn@
-CXX_COMPAT_WARN = @cxx_compat_warn@

 # This is set by --enable-checking.  The idea is to catch forgotten
 # "extern" tags in header files.
@@ -189,6 +187,10 @@ build/gengtype-lex.o-warn = -Wno-error
 SYSCALLS.c.X-warn = -Wno-strict-prototypes -Wno-error
 # dfp.c contains alias violations
 dfp.o-warn = -Wno-error
+# bitmap.c contains -Wc++compat warnings.
+bitmap.o-warn = -Wno-error
+# dominance.c contains a -Wc++compat warning.
+dominance.o-warn = -Wno-error

 # All warnings have to be shut off in stage1 if the compiler used then
 # isn't gcc; configure determines that.  WARN_CFLAGS will be either
diff -rup orig/egcc-SVN20080626/gcc/configure.ac egcc-SVN20080626/gcc/configure.ac
--- orig/egcc-SVN20080626/gcc/configure.ac	2008-06-15 02:02:20.000000000 +0200
+++ egcc-SVN20080626/gcc/configure.ac	2008-06-27 02:18:20.000000000 +0200
@@ -323,8 +323,7 @@ AC_CHECK_TYPES([__int64], [AC_CHECK_SIZE
 # So, we only use -pedantic if we can disable those warnings.

 ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings -Wstrict-prototypes \
-			  -Wmissing-prototypes], [loose_warn])
-ACX_PROG_CC_WARNING_OPTS([-Wc++-compat], [cxx_compat_warn])
+	  -Wmissing-prototypes -Wcast-qual -Wc++-compat], [loose_warn])
 ACX_PROG_CC_WARNING_OPTS([-Wold-style-definition \
                           -Wmissing-format-attribute], [strict_warn])
 ACX_PROG_CC_WARNING_ALMOST_PEDANTIC([-Wno-long-long -Wno-variadic-macros \
diff -rup orig/egcc-SVN20080626/gcc/cp/Make-lang.in egcc-SVN20080626/gcc/cp/Make-lang.in
--- orig/egcc-SVN20080626/gcc/cp/Make-lang.in	2008-06-22 02:02:33.000000000 +0200
+++ egcc-SVN20080626/gcc/cp/Make-lang.in	2008-06-27 02:18:20.000000000 +0200
@@ -89,7 +89,7 @@ CXX_OBJS = cp/cp-lang.o stub-objc.o $(CX
 c++_OBJS = $(CXX_OBJS) dummy-checksum.o cc1plus-checksum.o cp/g++spec.o

 # Use strict warnings for this front end.
-cp-warn = $(STRICT_WARN) $(CXX_COMPAT_WARN)
+cp-warn = $(STRICT_WARN)

 cc1plus-dummy$(exeext): $(CXX_OBJS) dummy-checksum.o $(BACKEND) $(LIBDEPS)
 	$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
diff -rup orig/egcc-SVN20080626/gcc/java/Make-lang.in egcc-SVN20080626/gcc/java/Make-lang.in
--- orig/egcc-SVN20080626/gcc/java/Make-lang.in	2008-06-22 02:02:32.000000000 +0200
+++ egcc-SVN20080626/gcc/java/Make-lang.in	2008-06-27 02:21:01.000000000 +0200
@@ -101,6 +101,9 @@ jvspec.o-warn = -Wno-error
 # Bison-1.75 output often yields (harmless) -Wtraditional warnings
 java/parse.o-warn = -Wno-error

+# java/jcf-io.c contains a -Wc++compat warning.
+java/jcf-io.o-warn = -Wno-error
+
 jc1$(exeext): $(JAVA_OBJS) $(BACKEND) $(LIBDEPS) attribs.o
 	rm -f $@
 	$(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \
diff -rup orig/egcc-SVN20080626/gcc/system.h egcc-SVN20080626/gcc/system.h
--- orig/egcc-SVN20080626/gcc/system.h	2008-06-19 22:58:16.000000000 +0200
+++ egcc-SVN20080626/gcc/system.h	2008-06-27 02:18:20.000000000 +0200
@@ -797,11 +797,9 @@ extern void fancy_abort (const char *, i
 #define CONST_CAST_RTX(X) CONST_CAST(struct rtx_def *, (X))
 #define CONST_CAST_BB(X) CONST_CAST(struct basic_block_def *, (X))

-/* Activate -Wcast-qual and -Wc++-compat as warnings (not errors via
-   the -Werror flag).  */
+/* Activate certain diagnostics as warnings (not errors via the
+   -Werror flag).  */
 #if GCC_VERSION >= 4003
-#pragma GCC diagnostic warning "-Wcast-qual"
-#pragma GCC diagnostic warning "-Wc++-compat"
 /* If asserts are disabled, activate -Wuninitialized as a warning (not
    an error/-Werror).  */
 #ifndef ENABLE_ASSERT_CHECKING

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2008-06-29  5:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-06-27  1:26 [CONFIGUREY PATCH]: place -Wcast-qual and -Wc++-compat under -Werror Kaveh R. GHAZI
2008-06-29  5:52 ` Ian Lance Taylor
2008-06-29  7:13   ` Kaveh R. GHAZI

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).