If you give a template function as a parameter to a template class, and call this template function in a template class-function (it's hard to describe) gcc 3.1.1 and gcc 3.2 stops with 't.cpp:19: Internal compiler error in tsubst_decl, at cp/pt.c:5648' Try the attached simple cpp file. If the default_initializer template function is a simple non-template function, then the sample compiles. Release: gcc version 3.2 20020809 (Debian prerelease) Environment: i386/Linux, AMD Athlon How-To-Repeat: compile the sample with 'g++ t.cpp -c'
Responsible-Changed-From-To: unassigned->nathan Responsible-Changed-Why: my tf_error patch broke it
State-Changed-From-To: open->analyzed State-Changed-Why: confirmed as a regression
State-Changed-From-To: analyzed->closed State-Changed-Why: 2002-09-16 Nathan Sidwell <nathan@codesourcery.com> PR c++/7718 * pt.c (tsubst_decl): Remove assert.
From: nathan@gcc.gnu.org To: gcc-gnats@gcc.gnu.org Cc: Subject: c++/7718 Date: 16 Sep 2002 19:57:33 -0000 CVSROOT: /cvs/gcc Module name: gcc Changes by: nathan@gcc.gnu.org 2002-09-16 12:57:33 Modified files: gcc/cp : ChangeLog pt.c gcc/testsuite : ChangeLog Added files: gcc/testsuite/g++.dg/template: subst1.C Log message: cp: PR c++/7718 * pt.c (tsubst_decl): Remove assert. testsuite: * g++.dg/template/subst1.C: New test. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&r1=1.2962&r2=1.2963 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&r1=1.615&r2=1.616 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.2078&r2=1.2079 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/subst1.C.diff?cvsroot=gcc&r1=NONE&r2=1.1
Subject: Bug 7718 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-3_2-rhl8-branch Changes by: jakub@gcc.gnu.org 2004-03-27 11:54:52 Modified files: gcc/cp : ChangeLog pt.c gcc/testsuite : ChangeLog Added files: gcc/testsuite/g++.dg/template: subst1.C Log message: 2002-09-16 Nathan Sidwell <nathan@codesourcery.com> PR c++/7718 * pt.c (tsubst_decl): Remove assert. * g++.dg/template/subst1.C: New test. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.2685.2.114.2.8.2.28&r2=1.2685.2.114.2.8.2.29 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/cp/pt.c.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.578.2.11.4.8&r2=1.578.2.11.4.9 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=1.1672.2.166.2.8.2.80&r2=1.1672.2.166.2.8.2.81 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/g++.dg/template/subst1.C.diff?cvsroot=gcc&only_with_tag=gcc-3_2-rhl8-branch&r1=NONE&r2=1.1.54.1