[cfe-dev] clang and gcc implement __PRETTY_FUNCTION__ differently
Joerg Sonnenberger
joerg at britannica.bec.de
Wed Nov 30 20:45:23 PST 2011
On Wed, Nov 30, 2011 at 06:21:04PM -0800, Kostya Serebryany wrote:
> #include <stdio.h>
> template<class T>
> const char *foo() {
> return __PRETTY_FUNCTION__;
> }
> int main() {
> printf("%s\n", foo<int>());
> }
This gets more interesting if the template is actually used by the
function. Changing it to foo(T x) and adjusting the call, the result is:
clang:
const char *foo(int)
gcc:
const char* foo(T) [with T = int]
I don't think the GCC output is really better.
Joerg
More information about the cfe-dev
mailing list