This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: __func__ and C++


Joe Buck <jbuck@synopsys.com> writes:

| On Tue, Sep 02, 2003 at 11:24:40AM -0700, Matt Austern wrote:
| > Inside a destructor, __func__ and __FUNCTION__ return "foo", not 
| > "~foo".  (__PRETTY_FUNCTION__ behaves the way I would expect.)
| > 
| > Is this behavior intended, or is it a bug?  The gcc manual merely says 
| > that __func__ is supposed to return the function's name without a type 
| > signature, and doesn't say what that's supposed to mean in the case of 
| > special C++ functions.  Since __func__ in C++ is a gcc extension, none 
| > of the language standards provide any useful guidance.
| 
| Reading the document, I would expect "without a type signature" to mean
| that the string does not include the return type or the argument types,
| but I would still expect to see "~foo" rather than "foo", or "operator=="
| or similar.  Of course, since it's an extension, it is arbitrary.

There is also the question of whether the enclosing scope should be
part of the name or not (I would expect yes).

-- Gaby


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]