public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/30811] __FUNCTION__ allowed in function declaration
       [not found] <bug-30811-4@http.gcc.gnu.org/bugzilla/>
@ 2022-01-24 18:29 ` pinskia at gcc dot gnu.org
  2022-01-24 20:12 ` [Bug c++/30811] __FUNCTION__ allowed in function declaration (i.e. add -Wpredefined-identifier-outside-function) egallager at gcc dot gnu.org
  1 sibling, 0 replies; 2+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-01-24 18:29 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |accepts-invalid, diagnostic

--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
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

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [Bug c++/30811] __FUNCTION__ allowed in function declaration (i.e. add -Wpredefined-identifier-outside-function)
       [not found] <bug-30811-4@http.gcc.gnu.org/bugzilla/>
  2022-01-24 18:29 ` [Bug c++/30811] __FUNCTION__ allowed in function declaration pinskia at gcc dot gnu.org
@ 2022-01-24 20:12 ` egallager at gcc dot gnu.org
  1 sibling, 0 replies; 2+ messages in thread
From: egallager at gcc dot gnu.org @ 2022-01-24 20:12 UTC (permalink / raw)
  To: gcc-bugs

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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-01-24 20:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-30811-4@http.gcc.gnu.org/bugzilla/>
2022-01-24 18:29 ` [Bug c++/30811] __FUNCTION__ allowed in function declaration pinskia at gcc dot gnu.org
2022-01-24 20:12 ` [Bug c++/30811] __FUNCTION__ allowed in function declaration (i.e. add -Wpredefined-identifier-outside-function) egallager at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).