Hello, I've posted a message to comp.gcc.help with a compiler error I'm
having but after some testing me and others found out is a regression on
gcc-4.5, the code is the following:
// -----------------------------------
template <class T>
struct identity
{
typedef T type;
};
template <class T, typename T::type A>
struct foo {};
template <class T, T A>
struct foo<identity<T>, A> {};
int main()
{
foo<identity<int>,0> bar; // error here
}
// ----------------------------------
gcc fails with:
teste.cpp:18:23: error: aggregate ‘foo<identity<int>, 0> bar’ has
incomplete type and cannot be defined
If I comment out the partial specialization, it compiles.
I've created ticket #44753 to track this issue.
Regards,
rod