typedef Elf_Verneed_Impl<ELFT> Elf_Verneed;
typedef Elf_Vernaux_Impl<ELFT> Elf_Vernaux;
typedef Elf_Versym_Impl<ELFT> Elf_Versym;
- typedef Elf_Hash<ELFT> Elf_Hash;
+ typedef Elf_Hash_Impl<ELFT> Elf_Hash;
typedef ELFEntityIterator<const Elf_Dyn> Elf_Dyn_Iter;
typedef iterator_range<Elf_Dyn_Iter> Elf_Dyn_Range;
typedef ELFEntityIterator<const Elf_Rela> Elf_Rela_Iter;
template <class ELFT>
void ELFFile<ELFT>::scanDynamicTable() {
// Build load-address to file-offset map.
- typedef typename IntervalMap<
+ typedef IntervalMap<
uintX_t, uintptr_t,
IntervalMapImpl::NodeSizer<uintX_t, uintptr_t>::LeafSize,
IntervalMapHalfOpenInfo<uintX_t>> LoadMapT;
- LoadMapT::Allocator Alloc;
+ typename LoadMapT::Allocator Alloc;
LoadMapT LoadMap(Alloc);
for (Elf_Phdr_Iter PhdrI = program_header_begin(),
auto I = LoadMap.find(VAddr);
if (I == LoadMap.end())
return nullptr;
- return base() + I.value() + (VAddr - I.start());
+ return this->base() + I.value() + (VAddr - I.start());
};
for (Elf_Dyn_Iter DynI = dynamic_table_begin(), DynE = dynamic_table_end();