Implement PathDiagnosticLocation::asRange() and PathDiagnosticLocation::asStmt().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67777 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/PathDiagnostic.cpp b/lib/Analysis/PathDiagnostic.cpp
index 1441088..dd9a0a8 100644
--- a/lib/Analysis/PathDiagnostic.cpp
+++ b/lib/Analysis/PathDiagnostic.cpp
@@ -152,3 +152,18 @@
return FullSourceLoc(R.getBegin(), const_cast<SourceManager&>(SM));
}
+
+SourceRange PathDiagnosticLocation::asRange() const {
+ // Note that we want a 'switch' here so that the compiler can warn us in
+ // case we add more cases.
+ switch (K) {
+ case SingleLoc:
+ case Range:
+ break;
+ case Statement:
+ return S->getSourceRange();
+ }
+
+ return R;
+}
+