LDC 1.15.0-beta2

kinke noone at nowhere.com
Sat Mar 30 16:29:29 UTC 2019


On Saturday, 30 March 2019 at 15:30:16 UTC, Thomas Mader wrote:
> The lowmem switch tests [1] fail for me because I use ltsmaster 
> as the bootstrap compiler.
>
> 1) I think those tests should not run in this szenario.
>
> 2) I know that I need to rebuild ldc with itself to get the 
> lowmem switch support in the long run but I wonder if that 
> would not be better integrated into your cmake build via an 
> option.
> Otherwise the packagers out there need to do it for themselves.

Ideally, all packagers would by now have installed a 2-step 
bootstrapping process (ltsmaster -> master/recent version -> 
master) or an incremental process (previous version -> master). 
That also prevents us from having to backport support for newer 
LLVM versions to ltsmaster (e.g., ltsmaster doesn't support new 
LLVM 8). 32-bit ltsmaster isn't able to compile current master, 
and principal compilability of master with the ltsmaster/2.068 
front-end and libs is also only possible due to some slight 
front-end adaptations (DMD requires 2.072 or so), whose number is 
only going to grow until it becomes totally infeasible.
In short, ltsmaster won't be able to bootstrap current LDC master 
forever, and I guess that point is reached pretty soon.

As to integrating the build-with-itself option in CMake, I'm 
definitely against increasing CMake complexity, as invoking CMake 
+ ninja/make twice is trivial and *way* more flexible.

And as to the 3 new dmd-testsuite tests using -lowmem, they are 
specifically there to check that the switch works, so if compiled 
with ltsmaster, they should fail to clearly indicate that the 
compiler isn't fully working due to an inadequate host compiler. 
If anyone doesn't care about that, the 3 files can simply be 
removed before running the tests.


More information about the Digitalmars-d-announce mailing list