1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 02:52:53 +02:00

[llvm-readobj] - Fix the compilation with GCC < 7.0.

This addressed post commit comments for D93900.

GCC had an issue and requires placing a specialization of
`printUnwindInfo` to a namespace to compile:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56480
This commit is contained in:
Georgii Rymar 2021-01-15 11:57:32 +03:00
parent 886badc15d
commit d2ec69d971

View File

@ -2536,6 +2536,8 @@ template <class ELFT> void ELFDumper<ELFT>::printUnwindInfo() {
Ctx.printUnwindInformation();
}
// The namespace is needed to fix the compilation with GCC older than 7.0+.
namespace {
template <> void ELFDumper<ELF32LE>::printUnwindInfo() {
if (Obj.getHeader().e_machine == EM_ARM) {
ARM::EHABI::PrinterContext<ELF32LE> Ctx(W, Obj, ObjF.getFileName(),
@ -2545,6 +2547,7 @@ template <> void ELFDumper<ELF32LE>::printUnwindInfo() {
DwarfCFIEH::PrinterContext<ELF32LE> Ctx(W, ObjF);
Ctx.printUnwindInformation();
}
} // namespace
template <class ELFT> void ELFDumper<ELFT>::printNeededLibraries() {
ListScope D(W, "NeededLibraries");