Sujet : Re: __func__ is not a keyword
De : Keith.S.Thompson+u (at) *nospam* gmail.com (Keith Thompson)
Groupes : comp.lang.cDate : 16. Mar 2025, 10:06:53
Autres entêtes
Organisation : None to speak of
Message-ID : <87frjdwdhu.fsf@nosuchdomain.example.com>
References : 1 2 3
User-Agent : Gnus/5.13 (Gnus v5.13)
Kaz Kylheku <
643-408-1753@kylheku.com> writes:
On 2025-03-15, Keith Thompson <Keith.S.Thompson+u@gmail.com> wrote:
I'm mildly curious how gcc and clang treat "__func__" internally
that leads to this odd behavior. The obvious way to implement it
would be to internally create a declaration of __func__ on entry
to each function definition, which shouldn't cause the symptom
you're seeing. But it's not a conformance issue
>
The main reason is this:
>
"As an extension, at file (or, in C++, namespace scope), __func__
evaluates to the empty string."
But it produces a diagnostic
warning: ‘__func__’ is not defined outside of function scope
And in a very quick look through the documentation, I don't see
a way to disable that warning (other than "-w", which disables
all warnings). Looks like they don't really want you using this
extension.
[...]
-- Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.comvoid Void(void) { Void(); } /* The recursive call of the void */