Bug 3350 - another ICE (Error reporting routines re-entered)
: another ICE (Error reporting routines re-entered)
Status: CLOSED FIXED
: Sisyphus
(All bugs in Sisyphus/gcc3.2-c++)
: unstable
: all Linux
: P2 normal
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2003-12-07 20:54 by
Modified: 2008-04-23 12:03 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2003-12-07 20:54:43
$ cat > a.cc
template <typename T> struct struct1: public T
{ struct1() : T() {} };
void g(void) { struct1<int *> c; }

$ g++ a.cc
a.cc: In instantiation of `struct1<int*>':
a.cc:3:   instantiated from here
a.cc:3: base type `int*' fails to be a struct or class type
a.cc: In constructor `struct1<T>::struct1() [with T = int*]':
a.cc:3:   instantiated from here
a.cc:2: type `
Internal compiler error: Error reporting routines re-entered.
------- Comment #1 From 2003-12-30 14:40:52 -------
$ g++-3.3 test.cc
test.cc: In instantiation of `struct1<int*>':
test.cc:3:   instantiated from here
test.cc:3: error: base type `int*' fails to be a struct or class type
test.cc: In constructor `struct1<T>::struct1() [with T = int*]':
test.cc:3:   instantiated from here
test.cc:2: error: type `
Internal compiler error: Error reporting routines re-entered.
------- Comment #2 From 2005-01-11 18:35:54 -------
still in gcc3.4
------- Comment #3 From 2006-05-27 04:04:16 -------
Fixed in g++ 4.1.1:
a.cc: In instantiation of 'struct1<int*>':
a.cc:3:   instantiated from here
a.cc:2: error: base type 'int*' fails to be a struct or class type
a.cc: In constructor 'struct1<T>::struct1() [with T = int*]':
a.cc:3:   instantiated from here
a.cc:2: error: type 'int*' is not a direct base of 'struct1<int*>'
------- Comment #4 From 2006-05-27 04:04:34 -------
Fixed in g++ 4.1.1:
a.cc: In instantiation of 'struct1<int*>':
a.cc:3:   instantiated from here
a.cc:2: error: base type 'int*' fails to be a struct or class type
a.cc: In constructor 'struct1<T>::struct1() [with T = int*]':
a.cc:3:   instantiated from here
a.cc:2: error: type 'int*' is not a direct base of 'struct1<int*>'