Frontend/XML: Add support for printing nested structures, patch by Martin Vejnár!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@115041 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Frontend/DeclXML.cpp b/lib/Frontend/DeclXML.cpp
index 97a7f55..3b600ff 100644
--- a/lib/Frontend/DeclXML.cpp
+++ b/lib/Frontend/DeclXML.cpp
@@ -43,6 +43,18 @@
       Visit(*i);
       Doc.toParent();
     }
+
+    for (RecordDecl::decl_iterator i = RD->decls_begin(),
+                                   e = RD->decls_end(); i != e; ++i) {
+      Decl *d = *i;
+      if (isa<RecordDecl>(d)) {
+        RecordDecl* pRec = cast<RecordDecl>(d);
+        if (pRec->isDefinition()) {
+          Visit(pRec);
+          Doc.toParent();
+        }
+      }
+    }
   }
 
   void addSubNodes(CXXRecordDecl* RD) {