Release D 2.087.0

David Nadlinger code at klickverbot.at
Mon Jul 15 20:14:46 UTC 2019


On Monday, 15 July 2019 at 14:00:23 UTC, Mike Franklin wrote:
> I'm sorry it broke digger, but digger is not how we typically 
> build DMD, druntime, and Phobos.

It also breaks the LDC build system. Just shipping rt.* too by 
itself would be simple, but as the frontend takes various 
libraries when referring to rt symbols internally (using types 
that don't match, etc.), compiling code that uses certain parts 
of rt.* at the same time as rt.* itself leads to non-obvious 
breakage.

The easiest way of making sure this doesn't happen is to just not 
ship rt.*.

Either way, there is a simple resolution here: Put new template 
code or other artefacts that are actually used via import in 
core.* (e.g. core.internal.*). This also provides a natural 
boundary between legacy code and the new runtime interface. If 
more and more code gets template-ised, rt.* will slowly wither 
away, but there is nothing wrong with that. At some point, it 
will just cease to exist naturally.

  — David


More information about the Digitalmars-d-announce mailing list