PR45881: Properly use CXXThisOverride for templated lambda
authorYuanfang Chen <yuanfang.chen@sony.com>
Tue, 7 Sep 2021 22:28:19 +0000 (15:28 -0700)
committerYuanfang Chen <yuanfang.chen@sony.com>
Wed, 8 Sep 2021 00:02:24 +0000 (17:02 -0700)
commit61d1cce2f83571c00f76144d42a2dea2cb3ab1ca
tree45d3d27b0e09f3977475c8ae741d75f92e53b1ee
parent79c00d3f544078f6510b26971699a8c776021a72
PR45881: Properly use CXXThisOverride for templated lambda

- `this` used in lambda expression parameter declarations needs no capture.
- Set up CXXThisOverride for default template arguments of a lambda.

A similar fix to this is c3d2ebb60f604.

Reviewed By: aaron.ballman

Differential Revision: https://reviews.llvm.org/D102531
clang/lib/Sema/SemaExprCXX.cpp
clang/lib/Sema/SemaTemplate.cpp
clang/lib/Sema/SemaTemplateDeduction.cpp
clang/test/SemaCXX/cxx1z-lambda-star-this.cpp
clang/test/SemaCXX/cxx20-lambda-decltype-this.cpp [new file with mode: 0644]