Hi all.

I think I've found a little bug (nothing risky, but annoying) in cooker gcc.
__PRETTY_FUNCTION__ is incorrect in template destructors:

#include <iostream>
using namespace std;

class A {
public:
        A() { cout << __PRETTY_FUNCTION__ << endl; };
        ~A() { cout << __PRETTY_FUNCTION__ << endl; };
};

template<class T>
class B {
public:
        B() { cout << __PRETTY_FUNCTION__ << endl; };
        ~B() { cout << __PRETTY_FUNCTION__ << endl; };
};

int main()
{
        A a;
        B<int> b;
        return 0;
}

Output is:

A::A()
B<T>::B() [with T = int]
void B<T>::B() [with T = int]
A::~A()

I have submitted a bug in gcc.gnu.org, but just wanted to post it here too.

-- 
J.A. Magallon <[EMAIL PROTECTED]>      \                 Software is like sex:
werewolf.able.es                         \           It's better when it's free
Mandrake Linux release 9.1 (Cooker) for i586
Linux 2.4.21-pre4-jam1 (gcc 3.2.1 (Mandrake Linux 9.1 3.2.1-5mdk))

Reply via email to