clang API Documentation
#include "clang/Sema/SemaInternal.h"
#include "clang/AST/ASTContext.h"
#include "clang/Basic/SourceManager.h"
#include "clang/Sema/DelayedDiagnostic.h"
#include "clang/Sema/Lookup.h"
#include "clang/Sema/LoopHint.h"
#include "clang/Sema/ScopeInfo.h"
#include "llvm/ADT/StringExtras.h"
Go to the source code of this file.
Functions | |
static Attr * | handleFallThroughAttr (Sema &S, Stmt *St, const AttributeList &A, SourceRange Range) |
static Attr * | handleLoopHintAttr (Sema &S, Stmt *St, const AttributeList &A, SourceRange) |
static void | CheckForIncompatibleAttributes (Sema &S, const SmallVectorImpl< const Attr * > &Attrs) |
static Attr * | ProcessStmtAttribute (Sema &S, Stmt *St, const AttributeList &A, SourceRange Range) |
static void CheckForIncompatibleAttributes | ( | Sema & | S, |
const SmallVectorImpl< const Attr * > & | Attrs | ||
) | [static] |
Definition at line 118 of file SemaStmtAttr.cpp.
References clang::Sema::Context, clang::Sema::Diag(), and clang::ASTContext::getLangOpts().
Referenced by clang::Sema::ProcessStmtAttributes().
static Attr* handleFallThroughAttr | ( | Sema & | S, |
Stmt * | St, | ||
const AttributeList & | A, | ||
SourceRange | Range | ||
) | [static] |
Definition at line 26 of file SemaStmtAttr.cpp.
References clang::Sema::Context, clang::FixItHint::CreateInsertion(), clang::Sema::Diag(), clang::AttributeList::getAttributeSpellingListIndex(), clang::SourceRange::getBegin(), clang::Sema::getCurFunction(), clang::SourceRange::getEnd(), clang::Sema::getLocForEndOfToken(), clang::Stmt::getLocStart(), clang::AttributeList::getRange(), and clang::sema::FunctionScopeInfo::SwitchStack.
Referenced by ProcessStmtAttribute().
static Attr* handleLoopHintAttr | ( | Sema & | S, |
Stmt * | St, | ||
const AttributeList & | A, | ||
SourceRange | |||
) | [static] |
Definition at line 46 of file SemaStmtAttr.cpp.
References clang::Sema::CheckLoopHintExpr(), clang::Sema::Context, clang::Sema::Diag(), clang::AttributeList::getArgAsExpr(), clang::AttributeList::getArgAsIdent(), clang::Stmt::getLocStart(), clang::IdentifierInfo::getName(), clang::AttributeList::getRange(), clang::Stmt::getStmtClass(), clang::IdentifierLoc::Ident, clang::IdentifierInfo::isStr(), clang::Pragma, and State.
Referenced by ProcessStmtAttribute().
static Attr* ProcessStmtAttribute | ( | Sema & | S, |
Stmt * | St, | ||
const AttributeList & | A, | ||
SourceRange | Range | ||
) | [static] |
Definition at line 193 of file SemaStmtAttr.cpp.
References clang::Sema::Diag(), clang::SourceRange::getBegin(), clang::AttributeList::getKind(), clang::AttributeList::getLoc(), clang::Stmt::getLocStart(), clang::AttributeList::getName(), clang::AttributeList::getRange(), handleFallThroughAttr(), handleLoopHintAttr(), and clang::AttributeList::isDeclspecAttribute().
Referenced by clang::Sema::ProcessStmtAttributes().