clang 20.0.0git
|
A diagnostic message which has been conditionally emitted pending the complete parsing of the current declaration. More...
#include "clang/Sema/DelayedDiagnostic.h"
Public Types | |
enum | DDKind : unsigned char { Availability , Access , ForbiddenType } |
Public Member Functions | |
void | Destroy () |
AccessedEntity & | getAccessData () |
const AccessedEntity & | getAccessData () const |
const NamedDecl * | getAvailabilityReferringDecl () const |
const NamedDecl * | getAvailabilityOffendingDecl () const |
StringRef | getAvailabilityMessage () const |
ArrayRef< SourceLocation > | getAvailabilitySelectorLocs () const |
AvailabilityResult | getAvailabilityResult () const |
unsigned | getForbiddenTypeDiagnostic () const |
The diagnostic ID to emit. | |
unsigned | getForbiddenTypeArgument () const |
QualType | getForbiddenTypeOperand () const |
const ObjCInterfaceDecl * | getUnknownObjCClass () const |
const ObjCPropertyDecl * | getObjCProperty () const |
bool | getObjCPropertyAccess () const |
Static Public Member Functions | |
static DelayedDiagnostic | makeAvailability (AvailabilityResult AR, ArrayRef< SourceLocation > Locs, const NamedDecl *ReferringDecl, const NamedDecl *OffendingDecl, const ObjCInterfaceDecl *UnknownObjCClass, const ObjCPropertyDecl *ObjCProperty, StringRef Msg, bool ObjCPropertyAccess) |
static DelayedDiagnostic | makeAccess (SourceLocation Loc, const AccessedEntity &Entity) |
static DelayedDiagnostic | makeForbiddenType (SourceLocation loc, unsigned diagnostic, QualType type, unsigned argument) |
Public Attributes | |
DDKind | Kind |
bool | Triggered |
SourceLocation | Loc |
struct AD | AvailabilityData |
struct FTD | ForbiddenTypeData |
char | AccessData [sizeof(AccessedEntity)] |
Access control. | |
A diagnostic message which has been conditionally emitted pending the complete parsing of the current declaration.
Definition at line 126 of file DelayedDiagnostic.h.
enum clang::sema::DelayedDiagnostic::DDKind : unsigned char |
Enumerator | |
---|---|
Availability | |
Access | |
ForbiddenType |
Definition at line 128 of file DelayedDiagnostic.h.
void DelayedDiagnostic::Destroy | ( | ) |
Definition at line 59 of file DelayedDiagnostic.cpp.
References Access, Availability, AvailabilityData, ForbiddenType, getAccessData(), and Kind.
|
inline |
Definition at line 170 of file DelayedDiagnostic.h.
References Access, AccessData, and Kind.
Referenced by Destroy(), clang::Sema::HandleDelayedAccessCheck(), and makeAccess().
|
inline |
Definition at line 174 of file DelayedDiagnostic.h.
References Access, AccessData, and Kind.
|
inline |
Definition at line 188 of file DelayedDiagnostic.h.
References Availability, AvailabilityData, and Kind.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inline |
Definition at line 184 of file DelayedDiagnostic.h.
References AvailabilityData.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inline |
Definition at line 179 of file DelayedDiagnostic.h.
References Availability, AvailabilityData, and Kind.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inline |
Definition at line 199 of file DelayedDiagnostic.h.
References Availability, AvailabilityData, and Kind.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inline |
Definition at line 193 of file DelayedDiagnostic.h.
References Availability, AvailabilityData, and Kind.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inline |
Definition at line 213 of file DelayedDiagnostic.h.
References ForbiddenType, ForbiddenTypeData, and Kind.
Referenced by handleDelayedForbiddenType().
|
inline |
The diagnostic ID to emit.
Used like so: Diag(diag.Loc, diag.getForbiddenTypeDiagnostic()) << diag.getForbiddenTypeOperand() << diag.getForbiddenTypeArgument();
Definition at line 208 of file DelayedDiagnostic.h.
References ForbiddenType, ForbiddenTypeData, and Kind.
Referenced by handleDelayedForbiddenType(), and isForbiddenTypeAllowed().
|
inline |
Definition at line 218 of file DelayedDiagnostic.h.
References ForbiddenType, ForbiddenTypeData, clang::QualType::getFromOpaquePtr(), and Kind.
Referenced by handleDelayedForbiddenType().
|
inline |
Definition at line 227 of file DelayedDiagnostic.h.
References AvailabilityData.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inline |
Definition at line 231 of file DelayedDiagnostic.h.
References AvailabilityData.
|
inline |
Definition at line 223 of file DelayedDiagnostic.h.
References AvailabilityData.
Referenced by clang::Sema::handleDelayedAvailabilityCheck().
|
inlinestatic |
Definition at line 146 of file DelayedDiagnostic.h.
References Access, getAccessData(), Kind, Loc, and Triggered.
Referenced by CheckAccess().
|
static |
Definition at line 24 of file DelayedDiagnostic.cpp.
References Availability, AvailabilityData, Kind, Loc, memcpy(), and Triggered.
Referenced by EmitAvailabilityWarning().
|
inlinestatic |
Definition at line 156 of file DelayedDiagnostic.h.
References ForbiddenType, ForbiddenTypeData, Kind, Loc, Triggered, and clang::ast_matchers::type.
Referenced by clang::SemaObjC::AdjustParameterTypeForObjCAutoRefCount(), clang::Sema::CheckParameter(), handleObjCOwnershipTypeAttr(), and inferARCLifetimeForPointee().
char clang::sema::DelayedDiagnostic::AccessData[sizeof(AccessedEntity)] |
struct AD clang::sema::DelayedDiagnostic::AvailabilityData |
Definition at line 256 of file DelayedDiagnostic.h.
Referenced by Destroy(), getAvailabilityMessage(), getAvailabilityOffendingDecl(), getAvailabilityReferringDecl(), getAvailabilityResult(), getAvailabilitySelectorLocs(), getObjCProperty(), getObjCPropertyAccess(), getUnknownObjCClass(), and makeAvailability().
struct FTD clang::sema::DelayedDiagnostic::ForbiddenTypeData |
Definition at line 257 of file DelayedDiagnostic.h.
Referenced by getForbiddenTypeArgument(), getForbiddenTypeDiagnostic(), getForbiddenTypeOperand(), and makeForbiddenType().
DDKind clang::sema::DelayedDiagnostic::Kind |
Definition at line 130 of file DelayedDiagnostic.h.
Referenced by Destroy(), getAccessData(), getAvailabilityMessage(), getAvailabilityReferringDecl(), getAvailabilityResult(), getAvailabilitySelectorLocs(), getForbiddenTypeArgument(), getForbiddenTypeDiagnostic(), getForbiddenTypeOperand(), clang::Sema::handleDelayedAvailabilityCheck(), makeAccess(), makeAvailability(), makeForbiddenType(), and clang::Sema::PopParsingDeclaration().
SourceLocation clang::sema::DelayedDiagnostic::Loc |
Definition at line 133 of file DelayedDiagnostic.h.
Referenced by clang::Sema::HandleDelayedAccessCheck(), handleDelayedForbiddenType(), makeAccess(), makeAvailability(), and makeForbiddenType().
bool clang::sema::DelayedDiagnostic::Triggered |
Definition at line 131 of file DelayedDiagnostic.h.
Referenced by clang::Sema::HandleDelayedAccessCheck(), clang::Sema::handleDelayedAvailabilityCheck(), handleDelayedForbiddenType(), makeAccess(), makeAvailability(), makeForbiddenType(), and clang::Sema::PopParsingDeclaration().