[clang-tools-extra] [clang-tidy] Add `AllowExplicitObjectParameters` option to `avoid-capturing-lambda-coroutines` (PR #182916)
Willem Kaufmann via cfe-commits
cfe-commits at lists.llvm.org
Fri Apr 3 05:21:01 PDT 2026
================
@@ -52,3 +52,33 @@ captures or ensuring the lambda closure object has a guaranteed lifetime.
Following these guidelines can help ensure the safe and reliable use of
coroutine lambdas in C++ code.
+
+Options
+-------
+
+.. option:: AllowExplicitObjectParameters
+
+ When set to `true`, lambda coroutines that use C++23 "deducing this"
+ (explicit object parameter, e.g. ``this auto``) are not flagged by this
+ check, because the captures are moved into the coroutine frame, decoupling
+ their lifetime from the lambda object.
+
+ Default is `false`.
+
+ The example from above can be made safe and will pass this check with the
+ following change:
+
+.. code-block:: c++
----------------
WillemKauf wrote:
Done
https://github.com/llvm/llvm-project/pull/182916
More information about the cfe-commits
mailing list