On 9/3/24 6:12 PM, Marek Polacek wrote:
Bootstrapped/regtested on x86_64-pc-linux-gnu, ok for trunk/14?

The change to return bool seems like unrelated cleanup; please push that separately on trunk only.

+         /* We can also have:
+
+             template <template <typename T, typename T::type TT> typename X>
+             void func() {}
+             template <typename U, int I>
+             struct Y {};
+             void g() { func<Y>(); }
+
+            where we are not in a template, but the type of PARM is T::type
+            and dependent_type_p doesn't want to see a TEMPLATE_TYPE_PARM
+            outside a template.  */
+         ++processing_template_decl;
          tree t = tsubst (TREE_TYPE (parm), outer_args, complain, in_decl);
+         --processing_template_decl;
          if (!uses_template_parms (t)
              && !same_type_p (t, TREE_TYPE (arg)))

This looks like the pattern Patrick just removed from type_unification_real for PR101463. Do we want to make the same change here?

Jason

Reply via email to