diff options
author | Itamar <itamar8910@gmail.com> | 2020-11-13 14:47:00 +0200 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2020-12-14 23:05:53 +0100 |
commit | dfdd977a823e643bf9952acd1f59a2ef78816732 (patch) | |
tree | a663e30aedab7a8dae37e4dc36e5099ee505380d /Libraries/LibELF | |
parent | 706a8c05fd7dffedb713b74072fb714c17f6564d (diff) | |
download | serenity-dfdd977a823e643bf9952acd1f59a2ef78816732.zip |
LibC: Link statically with libstdc++
This allows us to have the implementation of __cxa_demangle in libc.so.
Diffstat (limited to 'Libraries/LibELF')
-rw-r--r-- | Libraries/LibELF/DynamicObject.cpp | 5 | ||||
-rw-r--r-- | Libraries/LibELF/Loader.cpp | 5 |
2 files changed, 1 insertions, 9 deletions
diff --git a/Libraries/LibELF/DynamicObject.cpp b/Libraries/LibELF/DynamicObject.cpp index 09e162ced4..25973e5de3 100644 --- a/Libraries/LibELF/DynamicObject.cpp +++ b/Libraries/LibELF/DynamicObject.cpp @@ -420,11 +420,6 @@ Elf32_Addr DynamicObject::patch_plt_entry(u32 relocation_offset) ASSERT(relocation.type() == R_386_JMP_SLOT); auto sym = relocation.symbol(); - if (StringView { sym.name() } == "__cxa_demangle") { - dbgln("__cxa_demangle is currently not supported for shared objects"); - // FIXME: Where is it defined? - ASSERT_NOT_REACHED(); - } u8* relocation_address = relocation.address().as_ptr(); auto res = lookup_symbol(sym); diff --git a/Libraries/LibELF/Loader.cpp b/Libraries/LibELF/Loader.cpp index ecc7d1fbeb..1260a862b9 100644 --- a/Libraries/LibELF/Loader.cpp +++ b/Libraries/LibELF/Loader.cpp @@ -264,10 +264,7 @@ String Loader::symbolicate(u32 address, u32* out_offset) const #else auto& demangled_name = symbol.demangled_name; if (demangled_name.is_null()) { - - // FIXME: Temporarily disabled demangling since it is currently not supported with shared libraries - demangled_name = symbol.name; - // demangled_name = demangle(symbol.name); + demangled_name = demangle(symbol.name); } #endif |