From 6d41f1c7314f75776972c8bbad14f0fe190736e3 Mon Sep 17 00:00:00 2001 From: James Molloy Date: Fri, 4 Oct 2019 17:15:30 +0000 Subject: [PATCH] [Automaton] Fix invalid iterator reference Found by the expensive checks bot. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@373763 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Support/Automaton.h | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/include/llvm/Support/Automaton.h b/include/llvm/Support/Automaton.h index 38ab92fe639..5fe0824017d 100644 --- a/include/llvm/Support/Automaton.h +++ b/include/llvm/Support/Automaton.h @@ -94,9 +94,8 @@ private: // Iterate over all existing heads. We will mutate the Heads deque during // iteration. unsigned NumHeads = Heads.size(); - for (auto HeadI = Heads.begin(), HeadE = std::next(Heads.begin(), NumHeads); - HeadI != HeadE; ++HeadI) { - PathSegment *Head = *HeadI; + for (unsigned I = 0; I < NumHeads; ++I) { + PathSegment *Head = Heads[I]; // The sequence of pairs is sorted. Select the set of pairs that // transition from the current head state. auto PI = lower_bound(Pairs, NfaStatePair{Head->State, 0ULL}); -- 2.40.0