clang 20.0.0git
Macros | Typedefs | Enumerations | Functions
SemaAttr.cpp File Reference
#include "clang/AST/ASTConsumer.h"
#include "clang/AST/Attr.h"
#include "clang/AST/Expr.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Sema/Lookup.h"
#include "clang/Sema/SemaInternal.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;
NodeId Parent
Definition: ASTDiff.cpp:191

◆ 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 1213 of file SemaAttr.cpp.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum : unsigned
Enumerator
NoVisibility 

Definition at line 1214 of file SemaAttr.cpp.

Function Documentation

◆ addGslOwnerPointerAttributeIfNotExisting()

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

Definition at line 102 of file SemaAttr.cpp.

References clang::Sema::Context, and clang::Decl::redecls().

◆ checkCommonAttributeFeatures()

template<typename Ty >
static bool checkCommonAttributeFeatures ( Sema S,
const Ty *  Node,
const ParsedAttr A,
bool  SkipArgCountCheck 
)
static

◆ PushPragmaVisibility()

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