This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r157857 - in /trunk/gcc: cp/ChangeLog cp/cp-tre...
- From: dodji at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 31 Mar 2010 09:21:03 -0000
- Subject: r157857 - in /trunk/gcc: cp/ChangeLog cp/cp-tre...
Author: dodji
Date: Wed Mar 31 09:21:02 2010
New Revision: 157857
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=157857
Log:
Fix PR c++/43558
gcc/cp/ChangeLog:
PR c++/43558
* cp-tree.h (TEMPLATE_TYPE_PARM_SIBLING_PARMS): New accessor macro.
* pt.c (end_template_parm_list): Store sibling template parms of
each TEMPLATE_TYPE_PARMs into its TEMPLATE_TYPE_PARM_SIBLING_PARMS.
(push_template_decl_real): Don't store the containing template decl
into the DECL_CONTEXT of TEMPLATE_TYPE_PARMs anymore.
* typeck.c (get_template_parms_of_dependent_type): Get sibling parms
of a TEMPLATE_TYPE_PARM from TEMPLATE_TYPE_PARM_SIBLING_PARMS.
Simplify the logic.
gcc/testsuite/ChangeLog:
PR c++/43558
* g++.dg/template/typedef31.C: New test.
Added:
trunk/gcc/testsuite/g++.dg/template/typedef31.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/pt.c
trunk/gcc/cp/typeck.c
trunk/gcc/testsuite/ChangeLog