r110466 - in /trunk/gcc: cp/ChangeLog cp/cp-tre...
mmitchel@gcc.gnu.org
mmitchel@gcc.gnu.org
Wed Feb 1 02:51:00 GMT 2006
Author: mmitchel
Date: Wed Feb 1 02:51:13 2006
New Revision: 110466
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=110466
Log:
PR c++/25342
* cp-tree.h (DECL_TEMPLATE_SPECIALIZATIONS): Revise
documentation.
* pt.c (determine_specialization): Use INNERMOST_TEMPLATE_PARMS,
not TREE_VALUE.
(instantiate_class_template): Simplify.
(verify_class_unification): Remove.
(unify): Document parameters. Use INNERMOST_TEMPLATE_ARGS to
permit multiple levels of template arguments.
(more_specialized_class): Simplify.
(get_class_bindings): Pass full arguments to unify. Fold
verify_class_unification into this function. Return full
arguments.
(most_specialized_class): Adjust for changes to
get_class_bindings. Issue errors here for ambiguity. Return the
fully deduced arguments for the most specialized class, in
addition to the partial specialization.
PR c++/25342
* g++.gd/template/partial4.C: New test.
Added:
trunk/gcc/testsuite/g++.dg/template/partial4.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-cvs
mailing list