clang 22.0.0git
SemaAttr.cpp File Reference
#include "CheckExprLifetime.h"
#include "clang/AST/ASTConsumer.h"
#include "clang/AST/Attr.h"
#include "clang/AST/DeclCXX.h"
#include "clang/AST/Expr.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Sema/Lookup.h"
#include <optional>
#include "clang/Basic/AttrSubMatchRulesList.inc"

Go to the source code of this file.

Macros

#define ATTR_MATCH_RULE(Value, Spelling, IsAbstract)
#define ATTR_MATCH_SUB_RULE(Value, Spelling, IsAbstract, Parent, IsNegated)
#define ATTR_MATCH_RULE(Value, Spelling, IsAbstract)
#define ATTR_MATCH_SUB_RULE(Value, Spelling, IsAbstract, Parent, IsNegated)

Typedefs

typedef std::vector< std::pair< unsigned, SourceLocation > > VisStack

Enumerations

enum  : unsigned { NoVisibility = ~0U }

Functions

template<typename Attribute>
static void addGslOwnerPointerAttributeIfNotExisting (ASTContext &Context, CXXRecordDecl *Record)
static void PushPragmaVisibility (Sema &S, unsigned type, SourceLocation loc)
template<typename Ty>
static bool checkCommonAttributeFeatures (Sema &S, const Ty *Node, const ParsedAttr &A, bool SkipArgCountCheck)

Macro Definition Documentation

◆ ATTR_MATCH_RULE [1/2]

#define ATTR_MATCH_RULE ( Value,
Spelling,
IsAbstract )

◆ ATTR_MATCH_RULE [2/2]

#define ATTR_MATCH_RULE ( Value,
Spelling,
IsAbstract )

◆ ATTR_MATCH_SUB_RULE [1/2]

#define ATTR_MATCH_SUB_RULE ( Value,
Spelling,
IsAbstract,
Parent,
IsNegated )
Value:
case Value: \
return Parent;

◆ ATTR_MATCH_SUB_RULE [2/2]

#define ATTR_MATCH_SUB_RULE ( Value,
Spelling,
IsAbstract,
Parent,
IsNegated )
Value:
case Value: \
return IsNegated;

Typedef Documentation

◆ VisStack

typedef std::vector<std::pair<unsigned, SourceLocation> > VisStack

Definition at line 1330 of file SemaAttr.cpp.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : unsigned
Enumerator
NoVisibility 

Definition at line 1331 of file SemaAttr.cpp.

Function Documentation

◆ addGslOwnerPointerAttributeIfNotExisting()

template<typename Attribute>
void addGslOwnerPointerAttributeIfNotExisting ( ASTContext & Context,
CXXRecordDecl * Record )
static

◆ checkCommonAttributeFeatures()

◆ PushPragmaVisibility()

void PushPragmaVisibility ( Sema & S,
unsigned type,
SourceLocation loc )
static