]> granicus.if.org Git - clang/commitdiff
Adding an assert to help catch possible buffer underruns.
authorAaron Ballman <aaron@aaronballman.com>
Mon, 18 Nov 2013 18:29:00 +0000 (18:29 +0000)
committerAaron Ballman <aaron@aaronballman.com>
Mon, 18 Nov 2013 18:29:00 +0000 (18:29 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195024 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/SourceManager.cpp

index 93e9a594e78b03239f4a4858bd0d96426bc47025..9d79551f9118c9860b8ac396083906af8e78db2d 100644 (file)
@@ -1757,6 +1757,10 @@ FileID SourceManager::translateFile(const FileEntry *SourceFile) const {
 SourceLocation SourceManager::translateLineCol(FileID FID,
                                                unsigned Line,
                                                unsigned Col) const {
+  // Lines are used as a one-based index into a zero-based array. This assert
+  // checks for possible buffer underruns.
+  assert(Line != 0 && "Passed a zero-based line");
+
   if (FID.isInvalid())
     return SourceLocation();