Make using compiled libs with debug code better
Paul Backus
snarwin at gmail.com
Tue Oct 19 00:00:48 UTC 2021
On Monday, 18 October 2021 at 23:37:51 UTC, jfondren wrote:
> Nim has the same division, with the opposite default, in
> `assert` (erased in release builds) and `doAssert` (retained in
> release builds). D can simulate a bunch of different kinds of
> asserts by abusing dmd flags and different places that asserts
> can appear in - function bodies, contract bodies, unittests,
> and debug statements, version blocks, but what D's missing is
> the *convention* of using these asserts differently.
My guess is that if we changed the behavior of `-release`, D
programmers would learn the new convention pretty quickly.
Even if they didn't, though, the change is fail-safe--it will not
break any code that isn't already broken in debug builds. So as
compiler changes go, this one is relatively low-risk.
More information about the Digitalmars-d
mailing list