From 5d16d63d750cf6280ddade313563bc715b33c4a6 Mon Sep 17 00:00:00 2001 From: Benjamin Kramer Date: Wed, 22 Feb 2017 10:19:45 +0000 Subject: [PATCH] [ODRHash] Avoid dereferencing end() of a SmallVector. Found by MSAN. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295820 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Serialization/ASTReader.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/Serialization/ASTReader.cpp b/lib/Serialization/ASTReader.cpp index c8ee5c6529..01e1340f9b 100644 --- a/lib/Serialization/ASTReader.cpp +++ b/lib/Serialization/ASTReader.cpp @@ -8987,7 +8987,8 @@ void ASTReader::diagnoseOdrViolations() { // SecondDiffType will not be Other and FirstDecl and SecondDecl will be // filled in if not EndOfClass. while (FirstIt != FirstHashes.end() || SecondIt != SecondHashes.end()) { - if (FirstIt->second == SecondIt->second) { + if (FirstIt != FirstHashes.end() && SecondIt != SecondHashes.end() && + FirstIt->second == SecondIt->second) { ++FirstIt; ++SecondIt; continue; -- 2.50.1