This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/39754] [4.5 Regression] ICE: tree check: accessed elt 2 of tree_vec with 1 elts in tsubst, at cp/pt.c:9248
- From: "dodji at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 28 May 2009 11:24:35 -0000
- Subject: [Bug c++/39754] [4.5 Regression] ICE: tree check: accessed elt 2 of tree_vec with 1 elts in tsubst, at cp/pt.c:9248
- References: <bug-39754-14599@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #9 from dodji at gcc dot gnu dot org 2009-05-28 11:24 -------
Subject: Bug 39754
Author: dodji
Date: Thu May 28 11:24:18 2009
New Revision: 147951
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=147951
Log:
Fix for PR c++/PR39754
gcc/cp/ChangeLog:
PR c++/39754
* cp-tree.h (canonical_type_variant): Remove this function declaration.
(strip_typedefs): New function declaration.
* tree.c (strip_typedefs): New function definition.
(canonical_type_variant): Remove function definition.
* cvt.c (convert_from_reference): No need to use
canonical_type_variant.
* typeck.c (cp_build_indirect_ref): Likewise.
* error.c (dump_template_bindings): Use strip_typedefs instead of
canonical_type_variant.
* pt.c (convert_template_argument, unify): Likewise.
* mangle.c (canonicalize_for_substitution): Don't use
canonical_type_variant.
gcc/testsuite/ChangeLog:
PR c++/39754
* g++.dg/template/canon-type-1.C: New test.
* g++.dg/template/canon-type-2.C: Likewise.
* g++.dg/template/canon-type-3.C: Likewise.
* g++.dg/template/canon-type-4.C: Likewise.
* g++.dg/template/canon-type-5.C: Likewise.
* g++.dg/template/canon-type-6.C: Likewise.
* g++.dg/template/canon-type-7.C: Likewise.
Added:
trunk/gcc/testsuite/g++.dg/template/canon-type-1.C
trunk/gcc/testsuite/g++.dg/template/canon-type-2.C
trunk/gcc/testsuite/g++.dg/template/canon-type-3.C
trunk/gcc/testsuite/g++.dg/template/canon-type-4.C
trunk/gcc/testsuite/g++.dg/template/canon-type-5.C
trunk/gcc/testsuite/g++.dg/template/canon-type-6.C
trunk/gcc/testsuite/g++.dg/template/canon-type-7.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/cvt.c
trunk/gcc/cp/error.c
trunk/gcc/cp/mangle.c
trunk/gcc/cp/pt.c
trunk/gcc/cp/tree.c
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39754