This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: c++/5302: ICE with templates
- From: Reichelt <reichelt at igpm dot rwth-aachen dot de>
- To: kari at lyseo dot kotka dot fi, gcc-gnats at gcc dot gnu dot org, gcc-bugs at gcc dot gnu dot org, nobody at gcc dot gnu dot org
- Date: Tue, 8 Jan 2002 12:07:03 +0100
- Subject: Re: c++/5302: ICE with templates
Hi,
the ICE can be reproduced with the following small example:
namespace N
{
template <class T> struct A {};
}
struct B : public N::A<int>
{
B() : N::A() {} // ill-formed, should be "N::A<int>()"
};
So it's in fact an ice-on-illegal-code.
The problem occurs with gcc 3.0.x, but seems to be fixed in gcc 3.1.
By the way, in the original example you have to use "std::vector<_Tp*>"
instead of "std::vector" in both constructors of "del_vector" to get rid
of the ICE. In addition you should make the same change in both
"erase"-functions.
Greetings,
Volker Reichelt
http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=5302