From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3050 invoked by alias); 8 Jan 2002 10:56:12 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 3031 invoked by uid 71); 8 Jan 2002 10:56:05 -0000 Date: Tue, 08 Jan 2002 02:56:00 -0000 Message-ID: <20020108105605.3030.qmail@sources.redhat.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: Reichelt Subject: Re: c++/5302: ICE with templates Reply-To: Reichelt X-SW-Source: 2002-01/txt/msg00328.txt.bz2 List-Id: The following reply was made to PR c++/5302; it has been noted by GNATS. From: Reichelt To: kari@lyseo.kotka.fi, gcc-gnats@gcc.gnu.org, gcc-bugs@gcc.gnu.org, nobody@gcc.gnu.org Cc: Subject: Re: c++/5302: ICE with templates Date: Tue, 8 Jan 2002 12:07:03 +0100 Hi, the ICE can be reproduced with the following small example: namespace N { template struct A {}; } struct B : public N::A { B() : N::A() {} // ill-formed, should be "N::A()" }; 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