This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/10446: ICE on a definition of a nonexistent member function of a nested class in a class template
- From: kparz at iastate dot edu
- To: gcc-gnats at gcc dot gnu dot org
- Date: Sun, 20 Apr 2003 21:24:21 -0500 (CDT)
- Subject: c++/10446: ICE on a definition of a nonexistent member function of a nested class in a class template
>Number: 10446
>Category: c++
>Synopsis: ICE on a definition of a nonexistent member function of a nested class in a class template
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: unassigned
>State: open
>Class: ice-on-illegal-code
>Submitter-Id: net
>Arrival-Date: Mon Apr 21 02:26:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: Krzysztof Parzyszek
>Release: 3.4 20030419 (experimental)
>Organization:
>Environment:
System: FreeBSD arcturus.student.iastate.edu 4.8-STABLE FreeBSD 4.8-STABLE #24: Mon Apr 14 21:37:07 CDT 2003 kparz at arcturus dot student dot iastate dot edu:/usr/obj/usr/src/sys/ARCTURUS i386
host: i386-unknown-freebsd4.8
build: i386-unknown-freebsd4.8
target: i386-unknown-freebsd4.8
configured with: ../gcc/configure --prefix=/u/gcc-20030419 --enable-languages=c,c++,f77
>Description:
Attempt to provide an out-of-class definition of a nonexistent member function of a class nested in a class template causes an ICE. An ICE also occurs if the definition of the nested class `I' is removed.
>How-To-Repeat:
template <class T> struct L { struct I {}; };
template <class T> void L<T>::I::foo() {}
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: