]> gcc.gnu.org Git - gcc.git/commit - gcc/cp/pt.c
re PR c++/25342 (internal compiler error: in lookup_member, at cp/search.c:1209)
authorMark Mitchell <mark@codesourcery.com>
Wed, 1 Feb 2006 02:51:13 +0000 (02:51 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Wed, 1 Feb 2006 02:51:13 +0000 (02:51 +0000)
commit916b63c37110524381d529d8b82c9ef79615fc8b
tree8e110d0cc4538c8628120bf35b2a3d236919c224
parentf51a281b458a3fd4433a339f99a3ec29504b8959
re PR c++/25342 (internal compiler error: in lookup_member, at cp/search.c:1209)

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.

From-SVN: r110466
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/pt.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/template/partial4.C [new file with mode: 0644]
This page took 0.057292 seconds and 5 git commands to generate.