#include "clang/AST/ASTContext.h"
#include "clang/Basic/PragmaKinds.h"
#include "clang/Basic/TargetInfo.h"
#include "clang/Lex/Preprocessor.h"
#include "clang/Lex/Token.h"
#include "clang/Parse/LoopHint.h"
#include "clang/Parse/ParseDiagnostic.h"
#include "clang/Parse/Parser.h"
#include "clang/Parse/RAIIObjectsForParser.h"
#include "clang/Sema/Scope.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/StringSwitch.h"
#include "clang/Parse/AttrSubMatchRulesParserStringSwitches.inc"
#include "clang/Basic/AttrSubMatchRulesList.inc"
Go to the source code of this file.
|
static std::string | PragmaLoopHintString (Token PragmaName, Token Option) |
|
static StringRef | getIdentifier (const Token &Tok) |
|
static bool | isAbstractAttrMatcherRule (attr::SubjectMatchRule Rule) |
|
static void | diagnoseExpectedAttributeSubjectSubRule (Parser &PRef, attr::SubjectMatchRule PrimaryRule, StringRef PrimaryRuleName, SourceLocation SubRuleLoc) |
|
static void | diagnoseUnknownAttributeSubjectSubRule (Parser &PRef, attr::SubjectMatchRule PrimaryRule, StringRef PrimaryRuleName, StringRef SubRuleName, SourceLocation SubRuleLoc) |
|
static void | ParseAlignPragma (Preprocessor &PP, Token &FirstTok, bool IsOptions) |
|
static bool | ParseLoopHintValue (Preprocessor &PP, Token &Tok, Token PragmaName, Token Option, bool ValueInParens, PragmaLoopHintInfo &Info) |
| Parses loop or unroll pragma hint value and fills in Info. More...
|
|
◆ ATTR_MATCH_RULE
#define ATTR_MATCH_RULE |
( |
|
Value, |
|
|
|
Spelling, |
|
|
|
IsAbstract |
|
) |
| |
◆ diagnoseExpectedAttributeSubjectSubRule()
◆ diagnoseUnknownAttributeSubjectSubRule()
◆ getIdentifier()
static StringRef getIdentifier |
( |
const Token & |
Tok | ) |
|
|
static |
◆ isAbstractAttrMatcherRule()
◆ ParseAlignPragma()
Definition at line 1999 of file ParsePragma.cpp.
References clang::Preprocessor::Diag(), clang::Token::getIdentifierInfo(), clang::Preprocessor::getLangOpts(), clang::Token::getLocation(), clang::Preprocessor::getPreprocessorAllocator(), clang::Token::isNot(), clang::IdentifierInfo::isStr(), clang::Preprocessor::Lex(), clang::Sema::POAK_Mac68k, clang::Sema::POAK_Native, clang::Sema::POAK_Natural, clang::Sema::POAK_Packed, clang::Sema::POAK_Power, and clang::Sema::POAK_Reset.
◆ ParseLoopHintValue()
◆ PragmaLoopHintString()