This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

c++/2461: ICE in incomplete_type_error



>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 <class _Tp, class _Alloc = int>
struct vector
{
  typedef int iterator;
};

template<class T> struct bcTagChunk
{
  void doLinks ();
  vector<T>::iterator i;
};

template <class LINK>
struct MultiLinkIndexVector
{
  typedef vector<LINK> LinkList;
};

template <typename CHUNK, typename LINK >
struct MultiLinkPtrVector
{
  MultiLinkPtrVector ()
  {
    typename MultiLinkIndexVector<LINK>::LinkList::iterator i;
  }
};
  
void processEvent(bcTagChunk<int>* likelihoodchunk)
{
  likelihoodchunk->doLinks();
}
----------------------------------------------------------------

$ ./cc1plus x.cc
 MultiLinkPtrVector<CHUNK, LINK>::MultiLinkPtrVector() void processEvent(bcTagChunk<int>*)
x.cc: At global scope:
x.cc: In instantiation of `bcTagChunk<int>':
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 <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.


>Fix:
	
>Release-Note:
>Audit-Trail:
>Unformatted:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]