Has D failed? ( unpopular opinion but I think yes )

Iain Buclaw ibuclaw at gdcproject.org
Sun Apr 21 08:47:15 UTC 2019


On Sun, 21 Apr 2019 at 09:40, Nicholas Wilson via Digitalmars-d
<digitalmars-d at puremagic.com> wrote:
>
> On Sunday, 21 April 2019 at 07:10:38 UTC, Iain Buclaw wrote:
> > On Sat, 20 Apr 2019 at 23:05, Nicholas Wilson via Digitalmars-d
> > <digitalmars-d at puremagic.com> wrote:
> >>
> >> On Saturday, 20 April 2019 at 06:34:17 UTC, JN wrote:
> >> > If the LDC was the only compiler, I don't think people would
> >> > complain as much (based on popular 'compiler framework',
> >> > crossplatform, great codegen).
> >>
> >> I'm pretty sure Iain would =P
> >>
> >
> > If only because I've never gotten LDC to work. :-P
>
> It should work out of the box, if it doesn't please file a bug
> report.
>
> > (Nor do I have reason to believe it's been given much testing
> > beyond x86/64, despite a good breadth of OS support).
>
> I used it for my honours thesis on RasPi3b+ with Raspian so it
> definitely works on ARM. OpenCL and CUDA also work. Never tried
> on MIPS, PPC or AArch64.

Right, by the way it's currently the opposite for GDC.  There's around
26 or more different CPU architectures tested, but only all on Linux.

As no one else will, I'm in the middle of building on FreeBSD, NetBSD,
OpenBSD, Solaris, and DragonflyBSD in parallel and will enable phobos
support for those targets shortly.

Darwin, Cygwin and MinGW will likely only be partial in gdc-9, unless
there's a solution for GC scanning of emulated TLS data found in time.
:-)

In that list, FreeBSD, NetBSD, and OpenBSD will need some serious work
in D runtime, for the same reasons as what we discovered on
Solaris/SPARC.  There's lots of i.e: `version (FreeBSD)` in the
extern(C) bindings, but what is really meant is `version (FreeBSD) {
version (X86) ... }`.

However if core.stdc and core.sys were generated from system headers,
then there would be no problems whatsoever.

-- 
Iain


More information about the Digitalmars-d mailing list