[Bug c++/31323] typename A::B * p; in template definition, with curiously recurring template inheritance

2007-04-07 Thread bangerth at dealii dot org
--- Comment #5 from bangerth at dealii dot org 2007-04-08 00:54 --- (In reply to comment #4) ive no idea which part of the standard should imply/allow this. if one replaces typename T::privIC * priv with T * priv, its valid and it compiles. I thought T::privC is equally accessible

[Bug c++/31323] typename A::B * p; in template definition, with curiously recurring template inheritance

2007-03-26 Thread bangerth at dealii dot org
--- Comment #3 from bangerth at dealii dot org 2007-03-26 20:46 --- (In reply to comment #2) well, priv is a pointer.. What I really meant was a typedef: template class T struct Base { typedef typename T::X X; }; struct A : BaseA { typedef int X; };

[Bug c++/31323] typename A::B * p; in template definition, with curiously recurring template inheritance

2007-03-26 Thread mesti_mudam at yahoo dot com
--- Comment #4 from mesti_mudam at yahoo dot com 2007-03-26 21:49 --- ive no idea which part of the standard should imply/allow this. if one replaces typename T::privIC * priv with T * priv, its valid and it compiles. I thought T::privC is equally accessible 'incomplete' as T itself

[Bug c++/31323] typename A::B * p; in template definition, with curiously recurring template inheritance

2007-03-22 Thread bangerth at dealii dot org
--- Comment #1 from bangerth at dealii dot org 2007-03-23 06:26 --- Or smaller like this: -- template class T struct Base { typename T::X X; }; struct A : BaseA { typedef int X; }; -- sunCC also rejects it. I tend to believe that the code is

[Bug c++/31323] typename A::B * p; in template definition, with curiously recurring template inheritance

2007-03-22 Thread mesti_mudam at yahoo dot com
--- Comment #2 from mesti_mudam at yahoo dot com 2007-03-23 06:42 --- well, priv is a pointer.. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31323