On Wed, Sep 04, 2024 at 10:58:25AM -0400, Jason Merrill wrote:
> 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.

Done.
 
> > +     /* 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?

Interesting.  Sorry, this may be silly, but I'm not sure I can do that
here: find_template_parameters wants "the template parameters in scope"
but I don't think I have that here.

Marek

Reply via email to