diff options
author | Eli Friedman <eli.friedman@gmail.com> | 2009-05-30 05:03:24 +0000 |
---|---|---|
committer | Eli Friedman <eli.friedman@gmail.com> | 2009-05-30 05:03:24 +0000 |
commit | 48d14a222276fad5279e994d1a062f36ae6fcbce (patch) | |
tree | 93f9aaec7c2f5c6b41efffb87d9a03aa5c278a84 /lib/AST/DeclPrinter.cpp | |
parent | 42f42c0dd5cf71fbfc6fa282d03079a902f6e342 (diff) |
Add a Stmt::printPretty overload which takes an ASTContext; start
transitioning callers over to pass one in.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@72609 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/DeclPrinter.cpp')
-rw-r--r-- | lib/AST/DeclPrinter.cpp | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/lib/AST/DeclPrinter.cpp b/lib/AST/DeclPrinter.cpp index 950dd9e223..72f97035ef 100644 --- a/lib/AST/DeclPrinter.cpp +++ b/lib/AST/DeclPrinter.cpp @@ -172,6 +172,11 @@ void DeclPrinter::VisitDeclContext(DeclContext *DC, bool Indent) { for (DeclContext::decl_iterator D = DC->decls_begin(Context), DEnd = DC->decls_end(Context); D != DEnd; ++D) { + if (!Policy.Dump) { + // Skip over implicit declarations in pretty-printing mode. + if (D->isImplicit()) continue; + } + // The next bits of code handles stuff like "struct {int x;} a,b"; we're // forced to merge the declarations because there's no other way to // refer to the struct in question. This limited merging is safe without @@ -274,7 +279,7 @@ void DeclPrinter::VisitEnumConstantDecl(EnumConstantDecl *D) { Out << D->getNameAsString(); if (Expr *Init = D->getInitExpr()) { Out << " = "; - Init->printPretty(Out, 0, Policy, Indentation); + Init->printPretty(Out, Context, 0, Policy, Indentation); } } @@ -347,7 +352,7 @@ void DeclPrinter::VisitFunctionDecl(FunctionDecl *D) { } else Out << ' '; - D->getBody(Context)->printPretty(Out, 0, Policy, Indentation); + D->getBody(Context)->printPretty(Out, Context, 0, Policy, Indentation); Out << '\n'; } } @@ -362,7 +367,7 @@ void DeclPrinter::VisitFieldDecl(FieldDecl *D) { if (D->isBitField()) { Out << " : "; - D->getBitWidth()->printPretty(Out, 0, Policy, Indentation); + D->getBitWidth()->printPretty(Out, Context, 0, Policy, Indentation); } } @@ -384,7 +389,7 @@ void DeclPrinter::VisitVarDecl(VarDecl *D) { Out << "("; else Out << " = "; - D->getInit()->printPretty(Out, 0, Policy, Indentation); + D->getInit()->printPretty(Out, Context, 0, Policy, Indentation); if (D->hasCXXDirectInitializer()) Out << ")"; } @@ -396,7 +401,7 @@ void DeclPrinter::VisitParmVarDecl(ParmVarDecl *D) { void DeclPrinter::VisitFileScopeAsmDecl(FileScopeAsmDecl *D) { Out << "__asm ("; - D->getAsmString()->printPretty(Out, 0, Policy, Indentation); + D->getAsmString()->printPretty(Out, Context, 0, Policy, Indentation); Out << ")"; } @@ -475,7 +480,7 @@ void DeclPrinter::VisitObjCMethodDecl(ObjCMethodDecl *OMD) { if (OMD->getBody()) { Out << ' '; - OMD->getBody()->printPretty(Out, 0, Policy); + OMD->getBody()->printPretty(Out, Context, 0, Policy); Out << '\n'; } } |