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.orig	2007-01-15 11:11:05.000000000 +0100
+++ gcc/cp/decl.c	2009-11-20 13:41:54.000000000 +0100
@@ -6196,7 +6196,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.orig	2006-12-14 15:13:39.000000000 +0100
+++ gcc/cp/pt.c	2009-11-20 13:41:54.000000000 +0100
@@ -1257,7 +1257,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