clang-tools 22.0.0git
clang::tidy::cppcoreguidelines::AvoidReferenceCoroutineParametersCheck Class Reference

Warns on coroutines that accept reference parameters. More...

#include <AvoidReferenceCoroutineParametersCheck.h>

Inheritance diagram for clang::tidy::cppcoreguidelines::AvoidReferenceCoroutineParametersCheck:
[legend]

Public Member Functions

 AvoidReferenceCoroutineParametersCheck (StringRef Name, ClangTidyContext *Context)
void registerMatchers (ast_matchers::MatchFinder *Finder) override
void check (const ast_matchers::MatchFinder::MatchResult &Result) override
bool isLanguageVersionSupported (const LangOptions &LangOpts) const override

Detailed Description

Warns on coroutines that accept reference parameters.

Accessing a reference after a coroutine suspension point is not safe since the reference may no longer be valid. This implements CppCoreGuideline CP.53.

For the user-facing documentation see: https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/avoid-reference-coroutine-parameters.html

Definition at line 22 of file AvoidReferenceCoroutineParametersCheck.h.

Constructor & Destructor Documentation

◆ AvoidReferenceCoroutineParametersCheck()

clang::tidy::cppcoreguidelines::AvoidReferenceCoroutineParametersCheck::AvoidReferenceCoroutineParametersCheck ( StringRef Name,
ClangTidyContext * Context )
inline

Definition at line 24 of file AvoidReferenceCoroutineParametersCheck.h.

Member Function Documentation

◆ check()

void clang::tidy::cppcoreguidelines::AvoidReferenceCoroutineParametersCheck::check ( const ast_matchers::MatchFinder::MatchResult & Result)
override

Definition at line 24 of file AvoidReferenceCoroutineParametersCheck.cpp.

◆ isLanguageVersionSupported()

bool clang::tidy::cppcoreguidelines::AvoidReferenceCoroutineParametersCheck::isLanguageVersionSupported ( const LangOptions & LangOpts) const
inlineoverride

Definition at line 29 of file AvoidReferenceCoroutineParametersCheck.h.

◆ registerMatchers()

void clang::tidy::cppcoreguidelines::AvoidReferenceCoroutineParametersCheck::registerMatchers ( ast_matchers::MatchFinder * Finder)
override

Definition at line 16 of file AvoidReferenceCoroutineParametersCheck.cpp.


The documentation for this class was generated from the following files: