summaryrefslogtreecommitdiffstats
path: root/clang/lib/Parse/ParsePragma.cpp
diff options
context:
space:
mode:
authorRichard Smith <richard-llvm@metafoo.co.uk>2016-01-12 21:59:26 +0000
committerRichard Smith <richard-llvm@metafoo.co.uk>2016-01-12 21:59:26 +0000
commitba3a4f917f2d99edabd2dd8045587379c48b5787 (patch)
tree13c21694c9bfee112842d04c83dfd64c87ed30a3 /clang/lib/Parse/ParsePragma.cpp
parentc81c8c66d5046732a6b64a166b829ae12e787664 (diff)
downloadbcm5719-llvm-ba3a4f917f2d99edabd2dd8045587379c48b5787.tar.gz
bcm5719-llvm-ba3a4f917f2d99edabd2dd8045587379c48b5787.zip
Improve AST dumping:
1) When dumping a declaration that declares a name for a type, also dump the named type. 2) Add a #pragma clang __debug dump X, that dumps the lookup results for X in the current context. llvm-svn: 257529
Diffstat (limited to 'clang/lib/Parse/ParsePragma.cpp')
-rw-r--r--clang/lib/Parse/ParsePragma.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/Parse/ParsePragma.cpp b/clang/lib/Parse/ParsePragma.cpp
index 4430eb8d03d..bc70942851e 100644
--- a/clang/lib/Parse/ParsePragma.cpp
+++ b/clang/lib/Parse/ParsePragma.cpp
@@ -377,6 +377,14 @@ void Parser::HandlePragmaAlign() {
Actions.ActOnPragmaOptionsAlign(Kind, PragmaLoc);
}
+void Parser::HandlePragmaDump() {
+ assert(Tok.is(tok::annot_pragma_dump));
+ IdentifierInfo *II =
+ reinterpret_cast<IdentifierInfo *>(Tok.getAnnotationValue());
+ Actions.ActOnPragmaDump(getCurScope(), Tok.getLocation(), II);
+ ConsumeToken();
+}
+
void Parser::HandlePragmaWeak() {
assert(Tok.is(tok::annot_pragma_weak));
SourceLocation PragmaLoc = ConsumeToken();
OpenPOWER on IntegriCloud