Jump to page: 1 2 3
Thread overview
May 03
https://gcc.gnu.org/gcc-9/changes.html
May 03
On Fri, May 03, 2019 at 03:37:23PM +0000, 12345swordy via Digitalmars-d wrote:
> https://gcc.gnu.org/gcc-9/changes.html

WOOHOO!!! Celebration!

But... 2.076... is ancient. :-/  That's like *8* releases behind dmd/ldc.  I wish gdc were more up-to-date.  But I understand that Iain is constrained by the GCC release schedule.


T

-- 
That's not a bug; that's a feature!
May 03
Am Fri, 03 May 2019 10:03:47 -0700 schrieb H. S. Teoh:

> On Fri, May 03, 2019 at 03:37:23PM +0000, 12345swordy via Digitalmars-d wrote:
>> https://gcc.gnu.org/gcc-9/changes.html
> 
> WOOHOO!!! Celebration!
> 
> But... 2.076... is ancient. :-/  That's like *8* releases behind dmd/ldc.  I wish gdc were more up-to-date.  But I understand that Iain is constrained by the GCC release schedule.
> 
> 
> T

Well, you should use gcc trunk then ;-)

belka just wrote this in the GDC slack channel:
> GDC with D v2.086.0-rc.1 passes the original testsuite now (from 2.083).

We'll merge this to gcc trunk shortly after the 2.086 test suite passes and GCC 10 stage 1 development opens (or has it already opened? I'm not sure).

There's only one reason GCC 9 ships 2.076: We need one GCC/GDC release which builds without any D compiler, i.e. which still uses the C++ frontend. There's no newer C++ frontend available, so 2.076 (+ many backports, see dmd-cxx branches in the dlang dmd/druntime/phobos branches) was the latest version we could ship.

-- 
Johannes
May 03
On Fri, 3 May 2019 at 19:15, Johannes Pfau via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
>
> Am Fri, 03 May 2019 10:03:47 -0700 schrieb H. S. Teoh:
>
> > On Fri, May 03, 2019 at 03:37:23PM +0000, 12345swordy via Digitalmars-d wrote:
> >> https://gcc.gnu.org/gcc-9/changes.html
> >
> > WOOHOO!!! Celebration!
> >
> > But... 2.076... is ancient. :-/  That's like *8* releases behind dmd/ldc.  I wish gdc were more up-to-date.  But I understand that Iain is constrained by the GCC release schedule.
> >
> >
> > T
>
> Well, you should use gcc trunk then ;-)
>
> belka just wrote this in the GDC slack channel:
> > GDC with D v2.086.0-rc.1 passes the original testsuite now (from 2.083).
>
> We'll merge this to gcc trunk shortly after the 2.086 test suite passes and GCC 10 stage 1 development opens (or has it already opened? I'm not sure).
>

GCC 10 stage 1 is open.  Time to destroy trunk!

-- 
Iain
May 03
On Fri, May 03, 2019 at 05:12:07PM +0000, Johannes Pfau via Digitalmars-d wrote:
> Am Fri, 03 May 2019 10:03:47 -0700 schrieb H. S. Teoh:
[...]
> > But... 2.076... is ancient. :-/  That's like *8* releases behind dmd/ldc.  I wish gdc were more up-to-date.  But I understand that Iain is constrained by the GCC release schedule.
[...]
> Well, you should use gcc trunk then ;-)

I suppose I could, yes.  But I balk at the prospect of building gcc myself.  Unlike the ease of building dmd, building gcc is something that makes me tremble with fear lest the delicate build infrastructure collapses upon me.  I'm not (yet) desperate enough to do it, in spite of having done it before.


> belka just wrote this in the GDC slack channel:
> > GDC with D v2.086.0-rc.1 passes the original testsuite now (from
> > 2.083).
> 
> We'll merge this to gcc trunk shortly after the 2.086 test suite passes and GCC 10 stage 1 development opens (or has it already opened? I'm not sure).

Wonderful news!


> There's only one reason GCC 9 ships 2.076: We need one GCC/GDC release which builds without any D compiler, i.e. which still uses the C++ frontend. There's no newer C++ frontend available, so 2.076 (+ many backports, see dmd-cxx branches in the dlang dmd/druntime/phobos branches) was the latest version we could ship.
[...]

Ahhh, so *that's* the reason.  Makes sense.  We need GCC 9 with a C++ frontend so that we can bootstrap a self-hosting D compiler in later releases.  Understood. Thanks for the clarification!


T

-- 
IBM = I'll Buy Microsoft!
May 03
On Fri, May 03, 2019 at 07:26:35PM +0200, Iain Buclaw via Digitalmars-d wrote:
> On Fri, 3 May 2019 at 19:15, Johannes Pfau via Digitalmars-d <digitalmars-d@puremagic.com> wrote:
[...]
> > belka just wrote this in the GDC slack channel:
> > > GDC with D v2.086.0-rc.1 passes the original testsuite now (from
> > > 2.083).
> >
> > We'll merge this to gcc trunk shortly after the 2.086 test suite passes and GCC 10 stage 1 development opens (or has it already opened? I'm not sure).
> >
> 
> GCC 10 stage 1 is open.  Time to destroy trunk!
[...]

Does this mean from GCC 10 onwards, GCC releases will closely track DMD releases, the same way LDC does?  *That* would be very, very nice indeed.

And now that GCC officially supports D, new opportunities arise. E.g., we could ship D programs in Linux distros now, and nobody will be able to complain about needing an obscure compiler to build said programs. Hearty thanks to Iain for pushing this through to completion!


T

-- 
Unix was not designed to stop people from doing stupid things, because that would also stop them from doing clever things. -- Doug Gwyn
May 03
On 5/3/19 11:37 AM, 12345swordy wrote:
> https://gcc.gnu.org/gcc-9/changes.html

Congratulations Iain for a monumental achievement!
May 03
On Friday, 3 May 2019 at 17:52:22 UTC, H. S. Teoh wrote:
> Does this mean from GCC 10 onwards, GCC releases will closely track DMD releases, the same way LDC does?  *That* would be very, very nice indeed.
>

We have now only one frontend to maintain, so yes it should be possible. GCC doesn't release as often as DMD, but I personally don't see much value in porting every DMD version, it just shouldn't be outdated. There are sometimes interesting releases like 2.086 and some releases bring only new regressions. I'm currently using GDC 2.081.2 and I can't say I'm missing something from the newer versions.
May 03
On Fri, May 03, 2019 at 01:16:05PM -0700, Walter Bright via Digitalmars-d wrote:
> I can't thank Iain and Johannes enough! It's a critical achievement for D's future. It will open a lot of doors for us.

Indeed.  Most (all?) Linux distros use GCC as the default toolchain for their repository packages. Having D available means we can now ship D software to these distros without fearing that there's no compiler available, or that users will have to download an external compiler, which comes with a host of issues like compatibility with system libraries, proper integration, etc..

It also means prospective users can just install gdc from their official distro repo and start playing around with D. (This has been true for some distros for a while now, but having it as an official part of GCC means we don't have to do the porting work manually anymore -- distros will virtually do it for us.)

Of course, most of this applies to non-Linux environments that happen to use GCC too.  (Though I surmise that would be a much smaller audience.)


T

-- 
It is impossible to make anything foolproof because fools are so ingenious. -- Sammy
May 03
On Friday, 3 May 2019 at 20:16:05 UTC, Walter Bright wrote:
> I can't thank Iain and Johannes enough! It's a critical achievement for D's future. It will open a lot of doors for us.

Congratulations to Iain and Johannes and the entire GDC team!
« First   ‹ Prev
1 2 3