[clang] Reapply "[Clang] Transform lambda's constraints when instantiating parameter mapping (PR #207966)

Younan Zhang via cfe-commits cfe-commits at lists.llvm.org
Tue Jul 21 23:26:30 PDT 2026


================
@@ -97,6 +97,8 @@ enum class TemplateSubstitutionKind : char {
     /// The kind of substitution described by this argument list.
     TemplateSubstitutionKind Kind = TemplateSubstitutionKind::Specialization;
 
+    bool RetainInnerDepths = false;
----------------
zyn0217 wrote:

Our TemplateInstantiator could invoke recursive instantiation via different Sema calls, i.e. each instantiation is started within different TemplateInstantiator/DeclInstantiator.

The intent was to ensure that we don't have unwanted template depth getting reduced, without spreading such flag throughout the instantiation functions.

https://github.com/llvm/llvm-project/pull/207966


More information about the cfe-commits mailing list