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.

Reply via email to