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";
}