Skip to content

Commit be40921

Browse files
committed
Improve XML output for class/struct/union declarations, from Martin Vejnar!
llvm-svn: 116103
1 parent 63b0a1e commit be40921

File tree

1 file changed

+3
-21
lines changed

1 file changed

+3
-21
lines changed

clang/lib/Frontend/DeclXML.cpp

Lines changed: 3 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,11 @@ class DocumentXML::DeclPrinter : public DeclVisitor<DocumentXML::DeclPrinter> {
3838
}
3939

4040
void addSubNodes(RecordDecl* RD) {
41-
for (RecordDecl::field_iterator i = RD->field_begin(),
42-
e = RD->field_end(); i != e; ++i) {
43-
Visit(*i);
44-
Doc.toParent();
45-
}
46-
4741
for (RecordDecl::decl_iterator i = RD->decls_begin(),
4842
e = RD->decls_end(); i != e; ++i) {
49-
Decl *d = *i;
50-
if (isa<RecordDecl>(d)) {
51-
RecordDecl* pRec = cast<RecordDecl>(d);
52-
if (pRec->isDefinition()) {
53-
Visit(pRec);
54-
Doc.toParent();
55-
}
43+
if (!(*i)->isImplicit()) {
44+
Visit(*i);
45+
Doc.toParent();
5646
}
5747
}
5848
}
@@ -83,15 +73,7 @@ class DocumentXML::DeclPrinter : public DeclVisitor<DocumentXML::DeclPrinter> {
8373
Doc.addAttribute("is_virtual", base->isVirtual());
8474
Doc.toParent();
8575
}
86-
87-
for (CXXRecordDecl::method_iterator i = RD->method_begin(),
88-
e = RD->method_end(); i != e; ++i) {
89-
Visit(*i);
90-
Doc.toParent();
91-
}
92-
9376
}
94-
9577
}
9678

9779
void addSubNodes(EnumDecl* ED) {

0 commit comments

Comments
 (0)