diff options
author | Aaron Ballman <aaron@aaronballman.com> | 2014-01-09 19:39:35 +0000 |
---|---|---|
committer | Aaron Ballman <aaron@aaronballman.com> | 2014-01-09 19:39:35 +0000 |
commit | 15b27b97b7d79624603278d1705e9eafcc2d86b5 (patch) | |
tree | be4abe849b18e6b3f3c42eecca71ddddb643e332 /clang/utils/TableGen/TableGen.cpp | |
parent | a78f365b403362cc483fdf7aa28dd4c7f979a69e (diff) | |
download | bcm5719-llvm-15b27b97b7d79624603278d1705e9eafcc2d86b5.tar.gz bcm5719-llvm-15b27b97b7d79624603278d1705e9eafcc2d86b5.zip |
Removing a bit of custom parsing functionality used by the thread safety analysis APIs. Now using tablegen to determine whether an attribute's arguments should be parsed in an unevaluated context instead of relying on a separate, hard-coded list of attributes.
llvm-svn: 198883
Diffstat (limited to 'clang/utils/TableGen/TableGen.cpp')
-rw-r--r-- | clang/utils/TableGen/TableGen.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/utils/TableGen/TableGen.cpp b/clang/utils/TableGen/TableGen.cpp index 0b60897cd3c..f217a6e1724 100644 --- a/clang/utils/TableGen/TableGen.cpp +++ b/clang/utils/TableGen/TableGen.cpp @@ -25,6 +25,7 @@ using namespace clang; enum ActionType { GenClangAttrClasses, GenClangAttrIdentifierArgList, + GenClangAttrArgContextList, GenClangAttrTypeArgList, GenClangAttrImpl, GenClangAttrList, @@ -66,6 +67,10 @@ cl::opt<ActionType> Action( "gen-clang-attr-identifier-arg-list", "Generate a list of attributes that take an " "identifier as their first argument"), + clEnumValN(GenClangAttrArgContextList, + "gen-clang-attr-arg-context-list", + "Generate a list of attributes that parse their arguments " + "in an unevaluated context"), clEnumValN(GenClangAttrTypeArgList, "gen-clang-attr-type-arg-list", "Generate a list of attributes that take a type as their " @@ -154,6 +159,9 @@ bool ClangTableGenMain(raw_ostream &OS, RecordKeeper &Records) { case GenClangAttrIdentifierArgList: EmitClangAttrIdentifierArgList(Records, OS); break; + case GenClangAttrArgContextList: + EmitClangAttrArgContextList(Records, OS); + break; case GenClangAttrTypeArgList: EmitClangAttrTypeArgList(Records, OS); break; |