mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-27 23:25:36 +08:00
re PR c/23228 (Silly "unused variable" warning after redeclaration of a local variable)
PR c/23228 * c-decl.c (pop_scope): Don't warn about an unused variable if it is marked with TREE_NO_WARNING. (duplicate_decls): Set TREE_NO_WARNING if olddecl and newdecl somenow mismatch and olddecl is to be replaced. From-SVN: r105621
This commit is contained in:
parent
e48050bd06
commit
f95f80d1a7
@ -1,3 +1,11 @@
|
||||
2005-10-19 Steven Bosscher <stevenb@suse.de>
|
||||
|
||||
PR c/23228
|
||||
* c-decl.c (pop_scope): Don't warn about an unused variable
|
||||
if it is marked with TREE_NO_WARNING.
|
||||
(duplicate_decls): Set TREE_NO_WARNING if olddecl and newdecl
|
||||
somenow mismatch and olddecl is to be replaced.
|
||||
|
||||
2005-10-19 Eric Botcazou <ebotcazou@libertysurf.fr>
|
||||
|
||||
PR middle-end/23199
|
||||
|
@ -803,6 +803,7 @@ pop_scope (void)
|
||||
case VAR_DECL:
|
||||
/* Warnings for unused variables. */
|
||||
if (!TREE_USED (p)
|
||||
&& !TREE_NO_WARNING (p)
|
||||
&& !DECL_IN_SYSTEM_HEADER (p)
|
||||
&& DECL_NAME (p)
|
||||
&& !DECL_ARTIFICIAL (p)
|
||||
@ -1876,7 +1877,11 @@ duplicate_decls (tree newdecl, tree olddecl)
|
||||
tree newtype = NULL, oldtype = NULL;
|
||||
|
||||
if (!diagnose_mismatched_decls (newdecl, olddecl, &newtype, &oldtype))
|
||||
return false;
|
||||
{
|
||||
/* Avoid `unused variable' and other warnings warnings for OLDDECL. */
|
||||
TREE_NO_WARNING (olddecl) = 1;
|
||||
return false;
|
||||
}
|
||||
|
||||
merge_decls (newdecl, olddecl, newtype, oldtype);
|
||||
return true;
|
||||
|
Loading…
Reference in New Issue
Block a user