Use iterators to avoid dereferencing end().

Thanks to George Rimar for finding the problem.

llvm-svn: 276144
This commit is contained in:
Rafael Espindola 2016-07-20 17:41:18 +00:00
parent 055bdb96f5
commit f53f4f5a5e
1 changed files with 4 additions and 4 deletions

View File

@ -525,11 +525,11 @@ static void scanRelocs(InputSectionBase<ELFT> &C, ArrayRef<RelTy> Rels) {
ArrayRef<uint8_t> SectionData = C.getSectionData();
const uint8_t *Buf = SectionData.begin();
SectionPiece *PieceI = nullptr;
SectionPiece *PieceE = nullptr;
std::vector<SectionPiece>::iterator PieceI;
std::vector<SectionPiece>::iterator PieceE;
if (auto *Eh = dyn_cast<EhInputSection<ELFT>>(&C)) {
PieceI = &*Eh->Pieces.begin();
PieceE = &*Eh->Pieces.end();
PieceI = Eh->Pieces.begin();
PieceE = Eh->Pieces.end();
}
for (auto I = Rels.begin(), E = Rels.end(); I != E; ++I) {