HomePhabricator

[Concepts] Instantiate invented template type parameter type-constraint along…

Authored by saar.raz on Feb 3 2020, 5:44 AM.

Description

[Concepts] Instantiate invented template type parameter type-constraint along with function parameters

We previously instantiated type-constraints of template type parameters along with the type parameter itself,
this caused problems when the type-constraints created by abbreviated templates refreneced other parameters
in the abbreviated templates.

When encountering a template type parameter with a type constraint, if it is implicit, delay instantiation of
the type-constraint until the function parameter which created the invented template type parameter is
instantiated.

(cherry picked from commit eacca4824463d8b96e2e1c9f8bbf886055218a16)