Bump the minimal version required to compile DMD to 2.076.1

Martin Nowak code at dawg.eu
Sun Jan 14 19:22:11 UTC 2018


On Friday, 12 January 2018 at 16:13:39 UTC, Seb wrote:
> Motivation
> ----------
>
> 1) It's required for Walter's work on using -betterC for the 
> backend conversion:
>
> https://github.com/dlang/dmd/pull/6907

That is only a putative dependency. Indeed the -mv=<pkg>=<file> 
feature is useful.
If it's just about the backend though, there is a straightforward 
solution.

If we insist on having a backend package (not under dmd)
```
module backend.cod1;
```
then we can simply move the package to the right place
```
mv src/dmd/backend src/backend
```
. Imports of dmd from backend obviously forbidden (should be 
enforced by separate compilation).

> 2) We start to run into random failures lately, e.g.
>
> https://github.com/braddr/d-tester/issues/63
> https://github.com/dlang/dmd/pull/7569#issuecomment-356992048
>
> 3) There's also WIP to move dmd-cxx to 2.076.1:
>
> https://github.com/dlang/dmd/pull/7595

We've been through bootstrapping discussions a couple of times, 
so let me repeat what was decided when we made the frontend 
switch from C++ to D.

- Other platforms are bootstrapped by cross-compilation.
- DMD must be compilable with the latest stable/major release of 
dmd, ldc, and gdc.

   To enforce this policy the Travis-CI test was set up.
   Hopefully this original purpose of the Travis-CI hasn't been 
forgotten in the meantime.
- No other guarantees were negotiated.

   Sticking to an ancient compiler defeats the eat your own 
dogfood goal underlying the C++ -> D transition.

The latest released frontend versions are at the moment:
2.078 - dmd (2.078.1)
2.077 - ldc (1.7.0)
2.068 - gdc (6.3.0+2.068.2)

So technically we could only upgrade to 2.068 atm.
Would be good to hear some release plans from the GDC team for 
this year.

==========

Just in case this is what dmd's schedule looks like for 2018.

2.078.0 - 2018-01-01
2.079.0 - 2018-03-01
2.080.0 - 2018-05-01
2.081.0 - 2018-07-01
2.082.0 - 2018-09-01
2.083.0 - 2018-11-01
2.084.0 - 2019-01-01

I wished the semver discussion¹ would have been a bit more 
decisive and we'd started out the year with 8.0.0 (majors every 6 
months, minors every 2 months). Hopefully we take the chance of 
relabeling 2.080.0 to 8.0.0.

[¹]: 
http://forum.dlang.org/post/eghpfllbnvvlskbdpwfj@forum.dlang.org


More information about the Digitalmars-d mailing list