c++/6440: template specializations cause ICE

Jens.Maurer@gmx.net Jens.Maurer@gmx.net
Wed Apr 24 12:16:00 GMT 2002


>Number:         6440
>Category:       c++
>Synopsis:       template specializations cause ICE
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Wed Apr 24 12:16:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Jens Maurer
>Release:        3.0.4 and recent CVS checkout
>Organization:
>Environment:
Linux 2.4.17
>Description:
See ISO C++ core issue 336.

spec-example-c336.cc:14: Internal compiler error in lookup_template_class, at 
   cp/pt.c:3960
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
>How-To-Repeat:
    template<class T1> struct A { 
        template<class T2> struct B { 
            template<class T3> void mf1(T3);
            void mf2(); 
        }; 
    }; 

    template<> template<class X> 
        struct A<int>::B {
            template<class T> void mf1(T);
    }; 

    template<> template<> template<class T> 
        void A<int>::B<double>::mf1(T t) { } 
    template<class Y> template<> 
        void A<Y>::B<double>::mf2() { } 
>Fix:

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



More information about the Gcc-prs mailing list