aboutsummaryrefslogtreecommitdiff
path: root/lib/AST/DeclPrinter.cpp
diff options
context:
space:
mode:
authorTed Kremenek <kremenek@apple.com>2010-07-30 00:47:46 +0000
committerTed Kremenek <kremenek@apple.com>2010-07-30 00:47:46 +0000
commit2d6c906585c292c9de78eff3b42af06332857252 (patch)
treef8a4b84ff1190c95fb35a9e35b81a5ba0b860619 /lib/AST/DeclPrinter.cpp
parentffaab3e2bb13991bb3357e80f14bcae3745b2347 (diff)
Don't print out ivars twice in Decl::print(). Fixes <rdar://problem/8253668>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@109833 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/DeclPrinter.cpp')
-rw-r--r--lib/AST/DeclPrinter.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/AST/DeclPrinter.cpp b/lib/AST/DeclPrinter.cpp
index 765772dd13..fae1e724a1 100644
--- a/lib/AST/DeclPrinter.cpp
+++ b/lib/AST/DeclPrinter.cpp
@@ -198,6 +198,12 @@ void DeclPrinter::VisitDeclContext(DeclContext *DC, bool Indent) {
llvm::SmallVector<Decl*, 2> Decls;
for (DeclContext::decl_iterator D = DC->decls_begin(), DEnd = DC->decls_end();
D != DEnd; ++D) {
+
+ // Don't print ObjCIvarDecls, as they are printed when visiting the
+ // containing ObjCInterfaceDecl.
+ if (isa<ObjCIvarDecl>(*D))
+ continue;
+
if (!Policy.Dump) {
// Skip over implicit declarations in pretty-printing mode.
if (D->isImplicit()) continue;