https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88150
Bug ID: 88150 Summary: Use sections_elf_shared.d on Solaris Product: gcc Version: 9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: d Assignee: ibuclaw at gdcproject dot org Reporter: ro at gcc dot gnu.org Target Milestone: --- Target: *-*-solaris2.* Created attachment 45067 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=45067&action=edit Initial patch As I'd reported before, while sections_solaris.d compiles with the patch submitted at https://gcc.gnu.org/ml/gcc-patches/2018-10/msg01890.html https://gcc.gnu.org/ml/gcc-patches/2018-10/msg02002.html https://gcc.gnu.org/ml/gcc-patches/2018-11/msg00173.html the resulting libgdruntime.so has unresolvable references to _tlsstart, _tlsend, __start_deh, __stop_deh, and _d_dso_registry, for the most of which it's unclear how they should ever be resolved. It seems sections_solaris.d has severely bitrotted and Solaris should switch to use sections_elf_shared.d instead. Given that Sun and AT&T invented ELF for SVR4, that seems reasonable. I've now a rough initial patch ready that at least allows me to compile libdruntime/libphobos that way, produces shared libs without unresolved references, and allows a few D tests to actually run.