clang
3.9.0
|
LabelDecl - Represents the declaration of a label. More...
#include <Decl.h>
Public Member Functions | |
LabelStmt * | getStmt () const |
void | setStmt (LabelStmt *T) |
bool | isGnuLocal () const |
void | setLocStart (SourceLocation L) |
SourceRange | getSourceRange () const override LLVM_READONLY |
bool | isMSAsmLabel () const |
bool | isResolvedMSAsmLabel () const |
void | setMSAsmLabel (StringRef Name) |
StringRef | getMSAsmLabel () const |
void | setMSAsmLabelResolved () |
![]() | |
IdentifierInfo * | getIdentifier () const |
getIdentifier - Get the identifier that names this declaration, if there is one. More... | |
StringRef | getName () const |
getName - Get the name of identifier for this declaration as a StringRef. More... | |
std::string | getNameAsString () const |
getNameAsString - Get a human-readable name for the declaration, even if it is one of the special kinds of names (C++ constructor, Objective-C selector, etc). More... | |
void | printName (raw_ostream &os) const |
DeclarationName | getDeclName () const |
getDeclName - Get the actual, stored name of the declaration, which may be a special name. More... | |
void | setDeclName (DeclarationName N) |
Set the name of this declaration. More... | |
void | printQualifiedName (raw_ostream &OS) const |
printQualifiedName - Returns human-readable qualified name for declaration, like A::B::i, for i being member of namespace A::B. More... | |
void | printQualifiedName (raw_ostream &OS, const PrintingPolicy &Policy) const |
std::string | getQualifiedNameAsString () const |
virtual void | getNameForDiagnostic (raw_ostream &OS, const PrintingPolicy &Policy, bool Qualified) const |
getNameForDiagnostic - Appends a human-readable name for this declaration into the given stream. More... | |
bool | declarationReplaces (NamedDecl *OldD, bool IsKnownNewer=true) const |
Determine whether this declaration, if known to be well-formed within its context, will replace the declaration OldD if introduced into scope. More... | |
bool | hasLinkage () const |
Determine whether this declaration has linkage. More... | |
bool | isHidden () const |
Determine whether this declaration is hidden from name lookup. More... | |
void | setHidden (bool Hide) |
Set whether this declaration is hidden from name lookup. More... | |
bool | isCXXClassMember () const |
Determine whether this declaration is a C++ class member. More... | |
bool | isCXXInstanceMember () const |
Determine whether the given declaration is an instance member of a C++ class. More... | |
Linkage | getLinkageInternal () const |
Determine what kind of linkage this entity has. More... | |
Linkage | getFormalLinkage () const |
Get the linkage from a semantic point of view. More... | |
bool | hasExternalFormalLinkage () const |
True if this decl has external linkage. More... | |
bool | isExternallyVisible () const |
Visibility | getVisibility () const |
Determines the visibility of this entity. More... | |
LinkageInfo | getLinkageAndVisibility () const |
Determines the linkage and visibility of this entity. More... | |
Optional< Visibility > | getExplicitVisibility (ExplicitVisibilityKind kind) const |
If visibility was explicitly specified for this declaration, return that visibility. More... | |
bool | isLinkageValid () const |
True if the computed linkage is valid. More... | |
bool | hasLinkageBeenComputed () const |
True if something has required us to compute the linkage of this declaration. More... | |
NamedDecl * | getUnderlyingDecl () |
Looks through UsingDecls and ObjCCompatibleAliasDecls for the underlying named decl. More... | |
const NamedDecl * | getUnderlyingDecl () const |
NamedDecl * | getMostRecentDecl () |
const NamedDecl * | getMostRecentDecl () const |
ObjCStringFormatFamily | getObjCFStringFormattingFamily () const |
Static Public Member Functions | |
static LabelDecl * | Create (ASTContext &C, DeclContext *DC, SourceLocation IdentL, IdentifierInfo *II) |
static LabelDecl * | Create (ASTContext &C, DeclContext *DC, SourceLocation IdentL, IdentifierInfo *II, SourceLocation GnuLabelL) |
static LabelDecl * | CreateDeserialized (ASTContext &C, unsigned ID) |
static bool | classof (const Decl *D) |
static bool | classofKind (Kind K) |
![]() | |
static bool | classof (const Decl *D) |
static bool | classofKind (Kind K) |
Additional Inherited Members | |
![]() | |
enum | ExplicitVisibilityKind { VisibilityForType, VisibilityForValue } |
Kinds of explicit visibility. More... | |
![]() | |
NamedDecl (Kind DK, DeclContext *DC, SourceLocation L, DeclarationName N) | |
LabelDecl - Represents the declaration of a label.
Labels also have a corresponding LabelStmt, which indicates the position that the label was defined at. For normal labels, the location of the decl is the same as the location of the statement. For GNU local labels (label), the decl location is where the label is.
Definition at line 466 of file Decl.h.
References classofKind().
|
static |
Definition at line 3980 of file Decl.cpp.
References AttributeLangSupport::C.
Referenced by clang::Sema::LookupOrCreateLabel(), and clang::ASTNodeImporter::VisitLabelDecl().
|
static |
Definition at line 3985 of file Decl.cpp.
References AttributeLangSupport::C.
|
static |
Definition at line 3992 of file Decl.cpp.
References AttributeLangSupport::C, and ID.
|
inlineoverride |
|
inline |
Definition at line 449 of file Decl.h.
Referenced by clang::Sema::ActOnLabelStmt(), CheckPoppedLabel(), DiagnoseIndirectJumpStmt(), clang::CodeGen::CodeGenFunction::EmitLabel(), and clang::ASTNodeImporter::VisitLabelDecl().
|
inline |
Definition at line 452 of file Decl.h.
Referenced by clang::Sema::ActOnLabelStmt(), and clang::ASTNodeImporter::VisitLabelDecl().
|
inline |
Definition at line 459 of file Decl.h.
Referenced by clang::Sema::ActOnLabelStmt(), CheckPoppedLabel(), clang::Sema::GetOrCreateMSAsmLabel(), and isResolvedMSAsmLabel().
|
inline |
|
inline |
Definition at line 453 of file Decl.h.
Referenced by clang::Sema::ActOnLabelStmt(), and clang::ASTDeclReader::VisitLabelDecl().
void LabelDecl::setMSAsmLabel | ( | StringRef | Name | ) |
Definition at line 3997 of file Decl.cpp.
References Buffer.
Referenced by clang::Sema::GetOrCreateMSAsmLabel().
|
inline |
Definition at line 463 of file Decl.h.
Referenced by clang::Sema::GetOrCreateMSAsmLabel().
|
inline |
Definition at line 450 of file Decl.h.
Referenced by clang::Sema::ActOnLabelStmt().