clang 20.0.0git
|
#include "clang/Sema/Sema.h"
Public Types | |
enum class | Kind { Added , Removed , ConditionMismatch } |
enum class | OverrideResult { NoAction , Warn , Merge } |
Describes the result of effects differing between a base class's virtual method and an overriding method in a subclass. More... | |
Public Member Functions | |
StringRef | effectName () const |
bool | shouldDiagnoseConversion (QualType SrcType, const FunctionEffectsRef &SrcFX, QualType DstType, const FunctionEffectsRef &DstFX) const |
Return true if adding or removing the effect as part of a type conversion should generate a diagnostic. | |
bool | shouldDiagnoseRedeclaration (const FunctionDecl &OldFunction, const FunctionEffectsRef &OldFX, const FunctionDecl &NewFunction, const FunctionEffectsRef &NewFX) const |
Return true if adding or removing the effect in a redeclaration should generate a diagnostic. | |
OverrideResult | shouldDiagnoseMethodOverride (const CXXMethodDecl &OldMethod, const FunctionEffectsRef &OldFX, const CXXMethodDecl &NewMethod, const FunctionEffectsRef &NewFX) const |
Return true if adding or removing the effect in a C++ virtual method override should generate a diagnostic. | |
Public Attributes | |
FunctionEffect::Kind | EffectKind |
Kind | DiffKind |
FunctionEffectWithCondition | Old |
FunctionEffectWithCondition | New |
|
strong |
|
strong |
|
inline |
Definition at line 450 of file Sema.h.
References clang::FunctionEffectWithCondition::Effect, clang::FunctionEffect::kind(), clang::FunctionEffect::name(), New, clang::FunctionEffect::None, and Old.
bool FunctionEffectDiff::shouldDiagnoseConversion | ( | QualType | SrcType, |
const FunctionEffectsRef & | SrcFX, | ||
QualType | DstType, | ||
const FunctionEffectsRef & | DstFX | ||
) | const |
Return true if adding or removing the effect as part of a type conversion should generate a diagnostic.
Definition at line 2839 of file Sema.cpp.
References clang::FunctionEffect::Allocating, clang::FunctionEffect::Blocking, clang::FunctionEffect::NonAllocating, clang::FunctionEffect::NonBlocking, and clang::FunctionEffect::None.
FunctionEffectDiff::OverrideResult FunctionEffectDiff::shouldDiagnoseMethodOverride | ( | const CXXMethodDecl & | OldMethod, |
const FunctionEffectsRef & | OldFX, | ||
const CXXMethodDecl & | NewMethod, | ||
const FunctionEffectsRef & | NewFX | ||
) | const |
Return true if adding or removing the effect in a C++ virtual method override should generate a diagnostic.
Definition at line 2903 of file Sema.cpp.
References clang::FunctionEffect::Allocating, clang::FunctionEffect::Blocking, clang::FunctionEffect::NonAllocating, clang::FunctionEffect::NonBlocking, and clang::FunctionEffect::None.
bool FunctionEffectDiff::shouldDiagnoseRedeclaration | ( | const FunctionDecl & | OldFunction, |
const FunctionEffectsRef & | OldFX, | ||
const FunctionDecl & | NewFunction, | ||
const FunctionEffectsRef & | NewFX | ||
) | const |
Return true if adding or removing the effect in a redeclaration should generate a diagnostic.
Definition at line 2877 of file Sema.cpp.
References clang::FunctionEffect::Allocating, clang::FunctionEffect::Blocking, clang::FunctionEffect::NonAllocating, clang::FunctionEffect::NonBlocking, and clang::FunctionEffect::None.
FunctionEffect::Kind clang::FunctionEffectDiff::EffectKind |
FunctionEffectWithCondition clang::FunctionEffectDiff::New |
Definition at line 448 of file Sema.h.
Referenced by effectName().
FunctionEffectWithCondition clang::FunctionEffectDiff::Old |
Definition at line 447 of file Sema.h.
Referenced by effectName().