This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: PR c/53066 Wshadow should not warn for shadowing an extern function
On 25 April 2012 00:01, Joseph S. Myers <joseph@codesourcery.com> wrote:
> On Sun, 22 Apr 2012, Manuel López-Ibáñez wrote:
>
>> Wshadow warns whenever any declaration shadows a global function
>> declaration. This is almost always noise, since most (always?) of the
>> time one cannot mistakenly replace a function by another variable. The
>> false positives are too common (Linus mentions using the name 'index'
>> when including string.h).
>
> I think the correct rule would be: warn if a variable *with
> pointer-to-function type* shadows a function, and warn if a nested
> function shadows another function, but don't warn for variables shadowing
> functions if the variable has any other type (because if the variable has
> some type that isn't a pointer-to-function, no confusion is likely without
> another error being given).
Right. How does one check that a decl is a nested function?
Cheers,
Manuel.