From 1d551e4dc364d85d94ce159805dc637a4a819f7d Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Thu, 24 Nov 2011 13:15:21 +1030 Subject: [PATCH] c-decl.c (warn_if_shadowing): Don't warn if shadowed identifier is from system header. * c-decl.c (warn_if_shadowing): Don't warn if shadowed identifier is from system header. From-SVN: r181684 --- gcc/ChangeLog | 7 ++++++- gcc/c-decl.c | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e678a7ad8ee..6787a7c141d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2011-11-24 Alan Modra + + * c-decl.c (warn_if_shadowing): Don't warn if shadowed + identifier is from system header. + 2011-11-23 Jakub Jelinek PR target/51261 @@ -104,7 +109,7 @@ PR c++/51264 * tree.c (iterative_hash_expr): Remove break after return. - + 2011-11-22 Iain Sandoe * target.def (tm_clone_table_section): New hook. diff --git a/gcc/c-decl.c b/gcc/c-decl.c index 3cb29c0b3a2..44358a8c15e 100644 --- a/gcc/c-decl.c +++ b/gcc/c-decl.c @@ -2534,7 +2534,10 @@ warn_if_shadowing (tree new_decl) /* Is anything being shadowed? Invisible decls do not count. */ for (b = I_SYMBOL_BINDING (DECL_NAME (new_decl)); b; b = b->shadowed) - if (b->decl && b->decl != new_decl && !b->invisible) + if (b->decl && b->decl != new_decl && !b->invisible + && (b->decl == error_mark_node + || diagnostic_report_warnings_p (global_dc, + DECL_SOURCE_LOCATION (b->decl)))) { tree old_decl = b->decl; -- 2.11.4.GIT