Emit aggregate "location" for PathDiagnostic to plist. This fixes <rdar://problem/6729558>.
llvm-svn: 67845
diff --git a/clang/lib/Frontend/PlistDiagnostics.cpp b/clang/lib/Frontend/PlistDiagnostics.cpp
index 757b1ee..9087a94 100644
--- a/clang/lib/Frontend/PlistDiagnostics.cpp
+++ b/clang/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";
}