aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ELF/Relocations.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/ELF/Relocations.cpp b/ELF/Relocations.cpp
index 66493302b..106cc7c9c 100644
--- a/ELF/Relocations.cpp
+++ b/ELF/Relocations.cpp
@@ -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();
- std::vector<SectionPiece>::iterator PieceI;
- std::vector<SectionPiece>::iterator PieceE;
+ SectionPiece *PieceI = nullptr;
+ SectionPiece *PieceE = nullptr;
if (auto *Eh = dyn_cast<EhInputSection<ELFT>>(&C)) {
- PieceI = Eh->Pieces.begin();
- PieceE = Eh->Pieces.end();
+ PieceI = &*Eh->Pieces.begin();
+ PieceE = PieceI + Eh->Pieces.size();
}
for (auto I = Rels.begin(), E = Rels.end(); I != E; ++I) {