File pr28460.patch of Package gcc41

2006-07-23  Daniel Jacobowitz  <dan@codesourcery.com>

	PR c++/28460
	* decl.c (grokvardecl): Use FROB_CONTEXT.
	* pt.c (register_specialization): Likewise.

Index: gcc/cp/decl.c
===================================================================
--- gcc/cp/decl.c	(revision 115702)
+++ gcc/cp/decl.c	(revision 115703)
@@ -6289,7 +6289,7 @@ grokvardecl (tree type,
   if (explicit_scope && TREE_CODE (explicit_scope) == NAMESPACE_DECL)
     set_decl_namespace (decl, explicit_scope, 0);
   else
-    DECL_CONTEXT (decl) = scope;
+    DECL_CONTEXT (decl) = FROB_CONTEXT (scope);
 
   if (declspecs->storage_class == sc_extern)
     {
Index: gcc/cp/pt.c
===================================================================
--- gcc/cp/pt.c	(revision 115702)
+++ gcc/cp/pt.c	(revision 115703)
@@ -1224,7 +1224,7 @@ register_specialization (tree spec, tree
      template it is specializing.  */
   if (DECL_TEMPLATE_SPECIALIZATION (spec)
       && !check_specialization_namespace (tmpl))
-    DECL_CONTEXT (spec) = decl_namespace_context (tmpl);
+    DECL_CONTEXT (spec) = FROB_CONTEXT (decl_namespace_context (tmpl));
 
   if (!optimize_specialization_lookup_p (tmpl))
     DECL_TEMPLATE_SPECIALIZATIONS (tmpl)
openSUSE Build Service is sponsored by