* pt.c (instantiate_template_1): Use tsubst_aggr_type for context.
authorJason Merrill <jason@redhat.com>
Tue, 18 Nov 2014 14:36:48 +0000 (09:36 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Tue, 18 Nov 2014 14:36:48 +0000 (09:36 -0500)
From-SVN: r217716

gcc/cp/ChangeLog
gcc/cp/pt.c

index 1afd3cfa46a614d889f857824ea5cda9a8164ac2..117355975fa2de56d049ba911f55bcadc243c020 100644 (file)
@@ -1,5 +1,7 @@
 2014-11-18  Jason Merrill  <jason@redhat.com>
 
+       * pt.c (instantiate_template_1): Use tsubst_aggr_type for context.
+
        PR c++/58102
        * typeck2.c (store_init_value): Set it.
        * cp-tree.h (CONSTRUCTOR_MUTABLE_POISON): New.
index c0f3b8c5f9f29112a1dc5d28893035cafc38a861..6661325aa49641e2567355c2ca889cd38e54b8f4 100644 (file)
@@ -15856,8 +15856,8 @@ instantiate_template_1 (tree tmpl, tree orig_args, tsubst_flags_t complain)
     ++processing_template_decl;
   if (DECL_CLASS_SCOPE_P (gen_tmpl))
     {
-      tree ctx = tsubst (DECL_CONTEXT (gen_tmpl), targ_ptr,
-                        complain, gen_tmpl);
+      tree ctx = tsubst_aggr_type (DECL_CONTEXT (gen_tmpl), targ_ptr,
+                                  complain, gen_tmpl, true);
       push_nested_class (ctx);
     }
   /* Substitute template parameters to obtain the specialization.  */