https://gcc.gnu.org/bugzilla/show_bug.cgi?id=30811

Eric Gallager <egallager at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|__FUNCTION__ allowed in     |__FUNCTION__ allowed in
                   |function declaration        |function declaration (i.e.
                   |                            |add
                   |                            |-Wpredefined-identifier-out
                   |                            |side-function)
             Blocks|                            |87403

--- Comment #10 from Eric Gallager <egallager at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #9)
> Note clang warns but its warning is not so clear:
> <source>:4:27: warning: predefined identifier is only valid inside function
> [-Wpredefined-identifier-outside-function]
> void bar (const char *s = __FUNCTION__) { puts (s); }
>                           ^
> <source>:5:27: warning: predefined identifier is only valid inside function
> [-Wpredefined-identifier-outside-function]
> void baz (const char *s = __PRETTY_FUNCTION__) { puts (s); }
>                           ^
> 
> At least MSVC is clear on what is going on:
> <source>(4): error C2457: '__FUNCTION__': predefined macro cannot appear
> outside of a function body

adding clang's name for the warning to the title, so that this can block the
"new warning" meta-bug


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87403
[Bug 87403] [Meta-bug] Issues that suggest a new warning

Reply via email to