www.digitalmars.com         C & C++   DMDScript  

D.gnu - GDC-4.9 in development

reply "Iain Buclaw" <ibuclaw ubuntu.com> writes:
Hi all,

Changes this weekend:

- New gdc-4.8 branch has been created for stable updates on 
D-2.062 and gcc-4.8.x
https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8

- The main development trunk will switch to gcc-4.9 development 
(things may get unstable for the next couple of weeks).


Also, everyone welcome Johannes to the team. :-)


Regards
Iain.
Mar 23 2013
next sibling parent Manu <turkeyman gmail.com> writes:
--e89a8f643250a5a60504d8967fc7
Content-Type: text/plain; charset=UTF-8

Hooray! Welcome Johannes!
That guy rocks my world! :P

Will switching to 4.9 make it harder to support all the 4.8 (and below)
cross compilers out there? Like the console toolchains.


On 23 March 2013 20:33, Iain Buclaw <ibuclaw ubuntu.com> wrote:

 Hi all,

 Changes this weekend:

 - New gdc-4.8 branch has been created for stable updates on D-2.062 and
 gcc-4.8.x
 https://github.com/D-**Programming-GDC/GDC/tree/gdc-**4.8<https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8>

 - The main development trunk will switch to gcc-4.9 development (things
 may get unstable for the next couple of weeks).


 Also, everyone welcome Johannes to the team. :-)


 Regards
 Iain.

--e89a8f643250a5a60504d8967fc7 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">Hooray! Welcome Johannes!<div>That guy rocks my world! :P<= /div><div><br></div><div style>Will switching to 4.9 make it harder to supp= ort all the 4.8 (and below) cross compilers out there? Like the console too= lchains.</div> <div><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quote">On 23 Ma= rch 2013 20:33, Iain Buclaw <span dir=3D"ltr">&lt;<a href=3D"mailto:ibuclaw= ubuntu.com" target=3D"_blank">ibuclaw ubuntu.com</a>&gt;</span> wrote:<br>= <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"> Hi all,<br> <br> Changes this weekend:<br> <br> - New gdc-4.8 branch has been created for stable updates on D-2.062 and gcc= -4.8.x<br> <a href=3D"https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8" target=3D= "_blank">https://github.com/D-<u></u>Programming-GDC/GDC/tree/gdc-<u></u>4.= 8</a><br> <br> - The main development trunk will switch to gcc-4.9 development (things may= get unstable for the next couple of weeks).<br> <br> <br> Also, everyone welcome Johannes to the team. :-)<br> <br> <br> Regards<span class=3D"HOEnZb"><font color=3D"#888888"><br> Iain.<br> </font></span></blockquote></div><br></div></div></div> --e89a8f643250a5a60504d8967fc7--
Mar 23 2013
prev sibling next sibling parent "Iain Buclaw" <ibuclaw ubuntu.com> writes:
On Saturday, 23 March 2013 at 12:45:10 UTC, Manu wrote:
 Hooray! Welcome Johannes!
 That guy rocks my world! :P

 Will switching to 4.9 make it harder to support all the 4.8 
 (and below)
 cross compilers out there? Like the console toolchains.

The main cross compiler scripts out there only support official release versions. So it would be recommended to do the same and stick with gdc-4.8 (or 4.7) branch for the time being. This is really more of a milestone for me to go off and do the final set of breaking changes and heavy lifting in gdc code. :o) Regards Iain
Mar 23 2013
prev sibling next sibling parent "Moritz Maxeiner" <moritz ucworks.org> writes:
On Saturday, 23 March 2013 at 10:33:16 UTC, Iain Buclaw wrote:
 Hi all,

 Changes this weekend:

 - New gdc-4.8 branch has been created for stable updates on 
 D-2.062 and gcc-4.8.x
 https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8

 - The main development trunk will switch to gcc-4.9 development 
 (things may get unstable for the next couple of weeks).


 Also, everyone welcome Johannes to the team. :-)


 Regards
 Iain.

Just to be sure, does "for stable updates on D-2.062 and gcc-4.8.x" also include D-2.063+ (not now but as it comes out I mean), because you say "stable updates" and I don't count D as stable. I'm asking because I need to decide on which branch (master or gdc-4.8) to use for the Archlinux package (gdc-git) that has to provide the newest git version of gdc, so if there're going to be improvements or support for new D versions in the master branch that won't be going into the gdc-4.8 branch it'd be good to know. Thanks for your work, Moritz
Mar 23 2013
prev sibling next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
--001a11c1ff181297da04d8a94a42
Content-Type: text/plain; charset=ISO-8859-1

On Mar 24, 2013 1:00 AM, "Moritz Maxeiner" <moritz ucworks.org> wrote:
 On Saturday, 23 March 2013 at 10:33:16 UTC, Iain Buclaw wrote:
 Hi all,

 Changes this weekend:

 - New gdc-4.8 branch has been created for stable updates on D-2.062 and


 https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8

 - The main development trunk will switch to gcc-4.9 development (things


 Also, everyone welcome Johannes to the team. :-)


 Regards
 Iain.

Just to be sure, does "for stable updates on D-2.062 and gcc-4.8.x" also include D-2.063+ (not now but as it comes out

I'm asking because I need to decide on which branch (master or gdc-4.8) to use for the Archlinux package (gdc-git) that has to provide the newest git version of gdc, so if there're going to be improvements or support for new D versions in the master branch that won't be going into the gdc-4.8 branch it'd be good to know.
 Thanks for your work,
 Moritz

I'm kinda hoping to push the notion of D front-end minor releases again, which would include all the latest bugfixes of the current D version, but any new feature or breaking chances would be omitted. This would be suitable for gdc because putting on a new release of the front end is too much hassle as it stands. Regards -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0'; --001a11c1ff181297da04d8a94a42 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable <p><br> On Mar 24, 2013 1:00 AM, &quot;Moritz Maxeiner&quot; &lt;<a href=3D"mailto:= moritz ucworks.org">moritz ucworks.org</a>&gt; wrote:<br> &gt;<br> &gt; On Saturday, 23 March 2013 at 10:33:16 UTC, Iain Buclaw wrote:<br> &gt;&gt;<br> &gt;&gt; Hi all,<br> &gt;&gt;<br> &gt;&gt; Changes this weekend:<br> &gt;&gt;<br> &gt;&gt; - New gdc-4.8 branch has been created for stable updates on D-2.06= 2 and gcc-4.8.x<br> &gt;&gt; <a href=3D"https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8">= https://github.com/D-Programming-GDC/GDC/tree/gdc-4.8</a><br> &gt;&gt;<br> &gt;&gt; - The main development trunk will switch to gcc-4.9 development (t= hings may get unstable for the next couple of weeks).<br> &gt;&gt;<br> &gt;&gt;<br> &gt;&gt; Also, everyone welcome Johannes to the team. :-)<br> &gt;&gt;<br> &gt;&gt;<br> &gt;&gt; Regards<br> &gt;&gt; Iain.<br> &gt;<br> &gt;<br> &gt; Just to be sure, does &quot;for stable updates on<br> &gt; D-2.062 and gcc-4.8.x&quot; also include D-2.063+ (not now but as it c= omes out I mean), because you say &quot;stable updates&quot; and I don&#39;= t count D as stable. I&#39;m asking because I need to decide on which branc= h (master or gdc-4.8) to use for the Archlinux package (gdc-git) that has t= o provide the newest git version of gdc, so if there&#39;re going to be imp= rovements or support for new D versions in the master branch that won&#39;t= be going into the gdc-4.8 branch it&#39;d be good to know.<br> &gt;<br> &gt; Thanks for your work,<br> &gt; Moritz</p> <p>I&#39;m kinda hoping to push the notion of D front-end minor releases ag= ain, which would include all the latest bugfixes of the current D version, = but any new feature or breaking chances would be omitted.=A0 This would be = suitable for gdc because putting on a new release of the front end is too m= uch hassle as it stands.<br> </p> <p>Regards<br> -- <br> Iain Buclaw</p> <p>*(p &lt; e ? p++ : p) =3D (c &amp; 0x0f) + &#39;0&#39;;</p> --001a11c1ff181297da04d8a94a42--
Mar 24 2013
prev sibling next sibling parent Johannes Pfau <nospam example.com> writes:
Am Sat, 23 Mar 2013 22:13:24 +1000
schrieb Manu <turkeyman gmail.com>:

 Hooray! Welcome Johannes!
 That guy rocks my world! :P

Thanks :-) Iain and Daniel are doing all the hard work though.
 Will switching to 4.9 make it harder to support all the 4.8 (and
 below) cross compilers out there? Like the console toolchains.

I'll try to support gcc 4.7 for some more time. But a backport to gcc versions older than 4.7 is not very likely.
Mar 25 2013
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 03/23/2013 01:13 PM, Manu wrote:
 Will switching to 4.9 make it harder to support all the 4.8 (and below) cross
 compilers out there? Like the console toolchains.

Also ... how will that affect the ability to compile on Ubuntu using gcc-snapshot? Working on alpha/beta 13.04 that package has continued to be updated, but now with feature freeze I imagine it will be left at the version it currently occupies, which is from the 4.8 development branch. Without wanting to put any pressure or demands on anyone, I do think it would be very helpful to D if from now on the latest GDC (read: GDC with latest frontend, runtime, Phobos) could be guaranteed to build using both the current stable and development releases of GCC. Are there any particular things that any of us could do that would help make this easier? Oh, and ... dare I ask the nasty question, what's the status of GDC becoming formally integrated into GCC? I can't remember whether this was originally anticipated as happening with the 4.8 or 4.9 release.
Mar 26 2013
prev sibling next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
--20cf302ef79e4224ca04d8d4f408
Content-Type: text/plain; charset=ISO-8859-1

On 26 March 2013 12:37, Joseph Rushton Wakeling <
joseph.wakeling webdrake.net> wrote:

 On 03/23/2013 01:13 PM, Manu wrote:
 Will switching to 4.9 make it harder to support all the 4.8 (and below)

 compilers out there? Like the console toolchains.

Also ... how will that affect the ability to compile on Ubuntu using gcc-snapshot? Working on alpha/beta 13.04 that package has continued to be updated, but now with feature freeze I imagine it will be left at the version it currently occupies, which is from the 4.8 development branch.

in GCC in a while...
 Without wanting to put any pressure or demands on anyone, I do think it
 would be
 very helpful to D if from now on the latest GDC (read: GDC with latest
 frontend,
 runtime, Phobos) could be guaranteed to build using both the current
 stable and
 development releases of GCC.  Are there any particular things that any of
 us
 could do that would help make this easier?

guaranteed to work with those gcc releases. There won't be any support for multiple gcc versions in one source. This was done in the past (supporting gcc-3.4 -> gcc-4.4, then gcc-4.0 -> gcc-4.6). It was a horrible mess and caused lots of spaghetti code and macros to work around every single incompatibility problem. -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0'; --20cf302ef79e4224ca04d8d4f408 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">On 2= 6 March 2013 12:37, Joseph Rushton Wakeling <span dir=3D"ltr">&lt;<a href= =3D"mailto:joseph.wakeling webdrake.net" target=3D"_blank">joseph.wakeling = webdrake.net</a>&gt;</span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><div class=3D"im">On 03/23/2013 01:13 PM, Ma= nu wrote:<br> &gt; Will switching to 4.9 make it harder to support all the 4.8 (and below= ) cross<br> &gt; compilers out there? Like the console toolchains.<br> <br> </div>Also ... how will that affect the ability to compile on Ubuntu using<= br> gcc-snapshot? =A0Working on alpha/beta 13.04 that package has continued to = be<br> updated, but now with feature freeze I imagine it will be left at the versi= on it<br> currently occupies, which is from the 4.8 development branch.<br> <br></blockquote><div><br></div><div>4.8 should be working with that.=A0 Th= ere haven&#39;t been any API-level changes in GCC in a while...<br><br></di= v><div>=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8e= x;border-left:1px #ccc solid;padding-left:1ex"> Without wanting to put any pressure or demands on anyone, I do think it wou= ld be<br> very helpful to D if from now on the latest GDC (read: GDC with latest fron= tend,<br> runtime, Phobos) could be guaranteed to build using both the current stable= and<br> development releases of GCC. =A0Are there any particular things that any of= us<br> could do that would help make this easier?<br> <br> </blockquote></div><br></div><div class=3D"gmail_extra">This is why there a= re gdc-4.7, gdc-4.8 branches.=A0 They are there to be guaranteed to work wi= th those gcc releases.=A0 There won&#39;t be any support for multiple gcc v= ersions in one source.=A0 This was done in the past (supporting gcc-3.4 -&g= t; gcc-4.4,=A0 then gcc-4.0 -&gt; gcc-4.6).=A0 It was a horrible mess and c= aused lots of spaghetti code and macros to work around every single incompa= tibility problem.<br> </div><div class=3D"gmail_extra"><br clear=3D"all"><br>-- <br>Iain Buclaw<b= r><br>*(p &lt; e ? p++ : p) =3D (c &amp; 0x0f) + &#39;0&#39;; </div></div> --20cf302ef79e4224ca04d8d4f408--
Mar 26 2013
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 03/26/2013 03:44 PM, Iain Buclaw wrote:
 This is why there are gdc-4.7, gdc-4.8 branches.  They are there to be
 guaranteed to work with those gcc releases.  There won't be any support for
 multiple gcc versions in one source.

I think you've misunderstood me (although I don't think I expressed myself well, so mea culpa). I recognize the existence and purpose of the gcc-4.7 and gcc-4.8 branches and it makes perfect sense to organize things that way. It's just that some remarks make it seem like new versions of the frontend will only be guaranteed to work on 4.9. That seems to me to be unfortunate, although I understand how the difficulties of adapting new versions of the the frontend to GCC may make it inevitable. I remember you discussing some work that would help to make it possible to just pull in new versions of the frontend without any large re-working -- IIRC replacing some direct calls to the DMD backend with a more generic API that would be backend-agnostic -- and if there's in any case going to be some period of instability due to switching to 4.9, I wonder if now might be the moment to do that work?
Mar 26 2013
prev sibling next sibling parent Iain Buclaw <ibuclaw ubuntu.com> writes:
--001636c5b473c7ae9104d8d75bbf
Content-Type: text/plain; charset=ISO-8859-1

On 26 March 2013 16:09, Joseph Rushton Wakeling <
joseph.wakeling webdrake.net> wrote:

 On 03/26/2013 03:44 PM, Iain Buclaw wrote:
 This is why there are gdc-4.7, gdc-4.8 branches.  They are there to be
 guaranteed to work with those gcc releases.  There won't be any support

 multiple gcc versions in one source.

I think you've misunderstood me (although I don't think I expressed myself well, so mea culpa). I recognize the existence and purpose of the gcc-4.7 and gcc-4.8 branches and it makes perfect sense to organize things that way. It's just that some remarks make it seem like new versions of the frontend will only be guaranteed to work on 4.9.

be present only on 4.9. Though, people are free to backport to 4.8 or 4.7, as Johannes has done in the past. I remember you discussing some work that would help to make it possible to
 just
 pull in new versions of the frontend without any large re-working -- IIRC
 replacing some direct calls to the DMD backend with a more generic API that
 would be backend-agnostic -- and if there's in any case going to be some
 period
 of instability due to switching to 4.9, I wonder if now might be the
 moment to
 do that work?

See my pulls into DMD for a Target struct in the frontend. It's not complete, but it's slowly being pushed in. The only expected instability will come from the planned removal of typinf.c, toobj.c, todt.c - which are to be replaced by a implementation that builds GCC trees directly. -- Iain Buclaw *(p < e ? p++ : p) = (c & 0x0f) + '0'; --001636c5b473c7ae9104d8d75bbf Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">On 2= 6 March 2013 16:09, Joseph Rushton Wakeling <span dir=3D"ltr">&lt;<a href= =3D"mailto:joseph.wakeling webdrake.net" target=3D"_blank">joseph.wakeling = webdrake.net</a>&gt;</span> wrote:<br> <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p= x #ccc solid;padding-left:1ex"><div class=3D"im">On 03/26/2013 03:44 PM, Ia= in Buclaw wrote:<br> &gt; This is why there are gdc-4.7, gdc-4.8 branches. =A0They are there to = be<br> &gt; guaranteed to work with those gcc releases. =A0There won&#39;t be any = support for<br> &gt; multiple gcc versions in one source.<br> <br> </div>I think you&#39;ve misunderstood me (although I don&#39;t think I exp= ressed myself well,<br> so mea culpa). =A0I recognize the existence and purpose of the gcc-4.7 and = gcc-4.8<br> branches and it makes perfect sense to organize things that way. =A0It&#39;= s just that<br> some remarks make it seem like new versions of the frontend will only be<br=

<br></blockquote><div><br></div><div>Guaranteed is not the right word, but = future releases of the frontend will be present only on 4.9.=A0 Though, peo= ple are free to backport to 4.8 or 4.7, as Johannes has done in the past.<b= r> <br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bord= er-left:1px #ccc solid;padding-left:1ex"> I remember you discussing some work that would help to make it possible to = just<br> pull in new versions of the frontend without any large re-working -- IIRC<b= r> replacing some direct calls to the DMD backend with a more generic API that= <br> would be backend-agnostic -- and if there&#39;s in any case going to be som= e period<br> of instability due to switching to 4.9, I wonder if now might be the moment= to<br> do that work?<br> </blockquote></div><br></div><div class=3D"gmail_extra">See my pulls into D= MD for a Target struct in the frontend.=A0 It&#39;s not complete, but it&#3= 9;s slowly being pushed in.<br><br></div><div class=3D"gmail_extra">The onl= y expected instability will come from the planned removal of typinf.c, toob= j.c, todt.c - which are to be replaced by a implementation that builds GCC = trees directly.<br clear=3D"all"> </div><div class=3D"gmail_extra"><br>-- <br>Iain Buclaw<br><br>*(p &lt; e ?= p++ : p) =3D (c &amp; 0x0f) + &#39;0&#39;; </div></div> --001636c5b473c7ae9104d8d75bbf--
Mar 26 2013
prev sibling next sibling parent Johannes Pfau <nospam example.com> writes:
Am Tue, 26 Mar 2013 17:36:16 +0000
schrieb Iain Buclaw <ibuclaw ubuntu.com>:


will be present only on 4.9. Though, people are free to backport to 4.8 or 4.7, as Johannes has done in the past.

FYI I'll also try to continue updating the frontend in gdc-4.7 and 4.8.
Mar 26 2013
prev sibling next sibling parent "H. S. Teoh" <hsteoh quickfur.ath.cx> writes:
On Tue, Mar 26, 2013 at 07:06:30PM +0100, Johannes Pfau wrote:
 Am Tue, 26 Mar 2013 17:36:16 +0000
 schrieb Iain Buclaw <ibuclaw ubuntu.com>:
 

will be present only on 4.9. Though, people are free to backport to 4.8 or 4.7, as Johannes has done in the past.

FYI I'll also try to continue updating the frontend in gdc-4.7 and 4.8.

That's good news! I've been unable to get 4.8 to build in my Debian system (probably due to some system- or configuration-specific breakages somewhere... Debian multiarch isn't playing nice with GCC's build scripts). Having the latest frontend available in gdc-4.7 would be a big help to me. T -- Береги платье снову, а здоровье смолоду.
Mar 26 2013
prev sibling next sibling parent Joseph Rushton Wakeling <joseph.wakeling webdrake.net> writes:
On 03/26/2013 07:13 PM, H. S. Teoh wrote:
 That's good news! I've been unable to get 4.8 to build in my Debian
 system (probably due to some system- or configuration-specific breakages
 somewhere... Debian multiarch isn't playing nice with GCC's build
 scripts). Having the latest frontend available in gdc-4.7 would be a big
 help to me.

You were never able to get the latest to build on top of gcc-snapshot as per my instructions? :-( I can repeat them here now if it'd be helpful -- I've been building GDC like this for a long time now, and never had any issues (bar a couple of makefile errors that Iain quickly fixed).
Mar 26 2013
prev sibling parent "Iain Buclaw" <ibuclaw ubuntu.com> writes:
On Tuesday, 26 March 2013 at 19:20:43 UTC, Joseph Rushton 
Wakeling wrote:
 On 03/26/2013 07:13 PM, H. S. Teoh wrote:
 That's good news! I've been unable to get 4.8 to build in my 
 Debian
 system (probably due to some system- or configuration-specific 
 breakages
 somewhere... Debian multiarch isn't playing nice with GCC's 
 build
 scripts). Having the latest frontend available in gdc-4.7 
 would be a big
 help to me.

You were never able to get the latest to build on top of gcc-snapshot as per my instructions? :-( I can repeat them here now if it'd be helpful -- I've been building GDC like this for a long time now, and never had any issues (bar a couple of makefile errors that Iain quickly fixed).

What errors? No errors. Try pulling again. :o)
Mar 31 2013