re PR c++/13294 (namespace associations vs. specializations)

PR c++/13294
        * pt.c (maybe_process_partial_specialization): Remember the
        context of a specialization.

From-SVN: r79992
This commit is contained in:
Jason Merrill 2004-03-26 14:20:50 -05:00 committed by Jason Merrill
parent eb1a2c880a
commit 9b5c46c201
2 changed files with 15 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2004-03-25 Jason Merrill <jason@redhat.com>
PR c++/13294
* pt.c (maybe_process_partial_specialization): Remember the
context of a specialization.
2004-03-25 Kazu Hirata <kazu@cs.umass.edu>
* cxx-pretty-print.c: Fix comment typos.

View File

@ -733,7 +733,15 @@ maybe_process_partial_specialization (tree type)
{
tree tpl_ns = decl_namespace_context (CLASSTYPE_TI_TEMPLATE (type));
if (is_associated_namespace (current_namespace, tpl_ns))
/* Same or super-using namespace. */;
/* Same or super-using namespace. */
{
if (DECL_NAMESPACE_SCOPE_P (CLASSTYPE_TI_TEMPLATE (type)))
/* If this is a specialization of a namespace-scope class
template, remember the context of the
specialization. */
TYPE_CONTEXT (type) = DECL_CONTEXT (TYPE_NAME (type))
= FROB_CONTEXT (current_namespace);
}
else
{
pedwarn ("specializing `%#T' in different namespace", type);