diff mbox

[C/C++] Enable -Wunused-local-typedefs when -Wall or -Wunused is on

Message ID m38vh7vqzq.fsf_-_@seketeli.org
State New
Headers show

Commit Message

Dodji Seketeli May 4, 2012, 4:40 p.m. UTC
Hello,

Now that the libstdc++ testsuite is run with -ftrack-macro-location by
default, this patch triggers the -Wunused-local-typedefs warning when
-Wunused (and -Wall) is turned on.

The patch has been reviewed and accepted[1] a while ago, but was waiting
for the -ftrack-macro-expansion work to go in first.

Bootstrapped and tested again on x86_64-unknown-linux-gnu against
trunk.

Applied to the mainline.

[1]: http://gcc.gnu.org/ml/gcc-patches/2011-09/msg00605.html

gcc/

	* opts.c (finish_options): Activate -Wunused-local-typedefs if
	-Wunused is activated.
	* doc/invoke.texi: Update blurb of -Wunused-local-typedefs.
---
 gcc/ChangeLog       |    7 +++++++
 gcc/doc/invoke.texi |    1 +
 gcc/opts.c          |    4 ++++
 3 files changed, 12 insertions(+), 0 deletions(-)

Comments

Paolo Carlini May 4, 2012, 4:48 p.m. UTC | #1
On 05/04/2012 06:40 PM, Dodji Seketeli wrote:
> Hello,
>
> Now that the libstdc++ testsuite is run with -ftrack-macro-location by
> default, this patch triggers the -Wunused-local-typedefs warning when
> -Wunused (and -Wall) is turned on.
Yeah!!!

Paolo.
diff mbox

Patch

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2e3fa0c..d372a4f 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@ 
+2012-05-04  Dodji Seketeli  <dodji@redhat.com>
+
+	Enable -Wunused-local-typedefs when -Wall or -Wunused is on
+	* opts.c (finish_options): Activate -Wunused-local-typedefs if
+    	-Wunused is activated.
+	* doc/invoke.texi: Update blurb of -Wunused-local-typedefs.
+
 2012-05-04  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>
 
 	* config/s390/s390.md (*movmem_short, *clrmem_short)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 5550c71..86698fc 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -3622,6 +3622,7 @@  To suppress this warning use the @samp{unused} attribute
 @item -Wunused-local-typedefs @r{(C, Objective-C, C++ and Objective-C++ only)}
 @opindex Wunused-local-typedefs
 Warn when a typedef locally defined in a function is not used.
+This warning is enabled by @option{-Wall}.
 
 @item -Wunused-parameter
 @opindex Wunused-parameter
diff --git a/gcc/opts.c b/gcc/opts.c
index 22c7590..b6c786f 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -835,6 +835,10 @@  finish_options (struct gcc_options *opts, struct gcc_options *opts_set,
   if (opts->x_warn_unused_value == -1)
     opts->x_warn_unused_value = opts->x_warn_unused;
 
+  /* Wunused-local-typedefs is enabled by -Wunused or -Wall.  */
+  if (opts->x_warn_unused_local_typedefs == -1)
+    opts->x_warn_unused_local_typedefs = opts->x_warn_unused;
+
   /* This replaces set_Wextra.  */
   if (opts->x_warn_uninitialized == -1)
     opts->x_warn_uninitialized = opts->x_extra_warnings;