diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2016-01-12 21:59:26 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2016-01-12 21:59:26 +0000 |
commit | ba3a4f917f2d99edabd2dd8045587379c48b5787 (patch) | |
tree | 13c21694c9bfee112842d04c83dfd64c87ed30a3 /clang/lib/Parse/ParsePragma.cpp | |
parent | c81c8c66d5046732a6b64a166b829ae12e787664 (diff) | |
download | bcm5719-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.cpp | 8 |
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(); |