Emit aggregate "location" for PathDiagnostic to plist.  This fixes <rdar://problem/6729558>.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67845 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Frontend/PlistDiagnostics.cpp b/lib/Frontend/PlistDiagnostics.cpp
index 757b1ee..9087a94 100644
--- a/lib/Frontend/PlistDiagnostics.cpp
+++ b/lib/Frontend/PlistDiagnostics.cpp
@@ -298,8 +298,13 @@
       << "   <key>category</key><string>" << D->getCategory()
       << "</string>\n"
       << "   <key>type</key><string>" << D->getBugType()
-      << "</string>\n"
-      << "  </dict>\n";
+      << "</string>\n";
+    
+    // Output the location of the bug.
+    o << "  <key>location</key>\n";
+    EmitLocation(o, SM, D->getLocation(), FM, 2);
+    
+    o << "  </dict>\n";
 
   }