From mboxrd@z Thu Jan 1 00:00:00 1970 From: snyder@fnal.gov To: gcc-gnats@gcc.gnu.org Subject: c++/2461: ICE in incomplete_type_error Date: Mon, 02 Apr 2001 13:16:00 -0000 Message-id: <200104022011.f32KBCM03400@karma.fnal.gov> X-SW-Source: 2001-04/msg00026.html List-Id: >Number: 2461 >Category: c++ >Synopsis: ICE in incomplete_type_error >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-illegal-code >Submitter-Id: net >Arrival-Date: Mon Apr 02 13:16:00 PDT 2001 >Closed-Date: >Last-Modified: >Originator: scott snyder >Release: 3.0 20010402 (prerelease) >Organization: >Environment: System: Linux karma 2.2.16-22 #1 Tue Aug 22 16:49:06 EDT 2000 i686 unknown Architecture: i686 host: i686-pc-linux-gnu build: i686-pc-linux-gnu target: i686-pc-linux-gnu configured with: ../egcs/configure --prefix=/usr/local/egcs --enable-threads=posix --enable-long-long >Description: gcc 3.0 crashes when compiling the source below. Note that the input is ill-formed, due to a missing `typename' keyword at line 10. But that was difficult to find in the much larger source from which this was extracted, as the error messages did not point at the erroneous line. >How-To-Repeat: ---------------------------------------------------------------- template struct vector { typedef int iterator; }; template struct bcTagChunk { void doLinks (); vector::iterator i; }; template struct MultiLinkIndexVector { typedef vector LinkList; }; template struct MultiLinkPtrVector { MultiLinkPtrVector () { typename MultiLinkIndexVector::LinkList::iterator i; } }; void processEvent(bcTagChunk* likelihoodchunk) { likelihoodchunk->doLinks(); } ---------------------------------------------------------------- $ ./cc1plus x.cc MultiLinkPtrVector::MultiLinkPtrVector() void processEvent(bcTagChunk*) x.cc: At global scope: x.cc: In instantiation of `bcTagChunk': x.cc:30: instantiated from here x.cc:8: Internal error #108. x.cc:8: Internal compiler error in incomplete_type_error, at cp/typeck2.c:249 Please submit a full bug report, with preprocessed source if appropriate. See for instructions. >Fix: >Release-Note: >Audit-Trail: >Unformatted: