>template <class ELFT> void InputSectionBase<ELFT>::uncompress() {
>- typedef typename std::conditional<ELFT::Is64Bits, Elf64_Chdr,
>- Elf32_Chdr>::type Elf_Chdr;
So looks it could be just that. Remove of this typedef is enough generally to fix the issue.
New code looks better though.
George.