diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2014-01-29 22:13:45 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2014-01-29 22:13:45 +0000 |
commit | 35db2b3d4c89343171a52963518b03880432de0c (patch) | |
tree | d58e1aae530cabe33a1702e0d16caccbacf7ecfc /clang/lib | |
parent | 2c4e00ac1cc8a35cc7631e03a144765d264168e8 (diff) | |
download | bcm5719-llvm-35db2b3d4c89343171a52963518b03880432de0c.tar.gz bcm5719-llvm-35db2b3d4c89343171a52963518b03880432de0c.zip |
Consolidating several table-generated files containing parser-related string switches into a single file. This reduces build-related complexity by replacing four separate projects (and table-gen instantiations) with a single one.
No functional changes intended.
llvm-svn: 200424
Diffstat (limited to 'clang/lib')
-rw-r--r-- | clang/lib/Parse/CMakeLists.txt | 5 | ||||
-rw-r--r-- | clang/lib/Parse/ParseDecl.cpp | 16 |
2 files changed, 13 insertions, 8 deletions
diff --git a/clang/lib/Parse/CMakeLists.txt b/clang/lib/Parse/CMakeLists.txt index 3b01abf7a2f..924ebff99ac 100644 --- a/clang/lib/Parse/CMakeLists.txt +++ b/clang/lib/Parse/CMakeLists.txt @@ -23,17 +23,14 @@ add_clang_library(clangParse add_dependencies(clangParse ClangAttrClasses - ClangAttrIdentifierArg - ClangAttrLateParsed + ClangAttrParserStringSwitches ClangAttrList ClangAttrParsedAttrList - ClangAttrTypeArg ClangCommentNodes ClangDeclNodes ClangDiagnosticCommon ClangDiagnosticParse ClangStmtNodes - ClangAttrArgContext ) target_link_libraries(clangParse diff --git a/clang/lib/Parse/ParseDecl.cpp b/clang/lib/Parse/ParseDecl.cpp index c295c766065..0950ab09b76 100644 --- a/clang/lib/Parse/ParseDecl.cpp +++ b/clang/lib/Parse/ParseDecl.cpp @@ -69,9 +69,11 @@ TypeResult Parser::ParseTypeName(SourceRange *Range, /// isAttributeLateParsed - Return true if the attribute has arguments that /// require late parsing. static bool isAttributeLateParsed(const IdentifierInfo &II) { +#define CLANG_ATTR_LATE_PARSED_LIST return llvm::StringSwitch<bool>(II.getName()) -#include "clang/Parse/AttrLateParsed.inc" +#include "clang/Parse/AttrParserStringSwitches.inc" .Default(false); +#undef CLANG_ATTR_LATE_PARSED_LIST } /// ParseGNUAttributes - Parse a non-empty attributes list. @@ -196,24 +198,30 @@ static StringRef normalizeAttrName(StringRef Name) { /// \brief Determine whether the given attribute has an identifier argument. static bool attributeHasIdentifierArg(const IdentifierInfo &II) { +#define CLANG_ATTR_IDENTIFIER_ARG_LIST return llvm::StringSwitch<bool>(normalizeAttrName(II.getName())) -#include "clang/Parse/AttrIdentifierArg.inc" +#include "clang/Parse/AttrParserStringSwitches.inc" .Default(false); +#undef CLANG_ATTR_IDENTIFIER_ARG_LIST } /// \brief Determine whether the given attribute parses a type argument. static bool attributeIsTypeArgAttr(const IdentifierInfo &II) { +#define CLANG_ATTR_TYPE_ARG_LIST return llvm::StringSwitch<bool>(normalizeAttrName(II.getName())) -#include "clang/Parse/AttrTypeArg.inc" +#include "clang/Parse/AttrParserStringSwitches.inc" .Default(false); +#undef CLANG_ATTR_TYPE_ARG_LIST } /// \brief Determine whether the given attribute requires parsing its arguments /// in an unevaluated context or not. static bool attributeParsedArgsUnevaluated(const IdentifierInfo &II) { +#define CLANG_ATTR_ARG_CONTEXT_LIST return llvm::StringSwitch<bool>(normalizeAttrName(II.getName())) -#include "clang/Parse/AttrArgContext.inc" +#include "clang/Parse/AttrParserStringSwitches.inc" .Default(false); +#undef CLANG_ATTR_ARG_CONTEXT_LIST } IdentifierLoc *Parser::ParseIdentifierLoc() { |