Include the "issue context" (e.g. function or method) where a static analyzer issue occurred in the plist output.

Fixes <rdar://problem/11004527>

llvm-svn: 154030
diff --git a/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
index 1d1803c..f7c7c0c 100644
--- a/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
+++ b/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp
@@ -186,7 +186,8 @@
   if (isPure) {
     os << "\n" <<  "Call pure virtual functions during construction or "
        << "destruction may leads undefined behaviour";
-    BR.EmitBasicReport("Call pure virtual function during construction or "
+    BR.EmitBasicReport(AC->getDecl(),
+                       "Call pure virtual function during construction or "
                        "Destruction",
                        "Cplusplus",
                        os.str(), CELoc, &R, 1);
@@ -195,7 +196,8 @@
   else {
     os << "\n" << "Call virtual functions during construction or "
        << "destruction will never go to a more derived class";
-    BR.EmitBasicReport("Call virtual function during construction or "
+    BR.EmitBasicReport(AC->getDecl(),
+                       "Call virtual function during construction or "
                        "Destruction",
                        "Cplusplus",
                        os.str(), CELoc, &R, 1);