DIP 1006 - Preliminary Review Round 1
Joseph Rushton Wakeling
joseph.wakeling at webdrake.net
Sun Nov 26 11:59:28 UTC 2017
On Tuesday, 21 November 2017 at 14:15:30 UTC, Martin Nowak wrote:
>> https://github.com/dlang/DIPs/blob/master/DIPs/DIP1006.md
>
> Has come up a couple of times and it's a good idea to allow
> more control over which checks are enabled.
> I find the suggested switch levels a bit counter-intuitive and
> would suggest
>
> -release=assert,in,out,invariant
>
> to be the equivalent of the current
>
> -release
>
> while allowing to enable any subset
I like the idea of specializing the meaning of the -release flag
via optional arguments.
One suggestion: replace -release=assert with -release=body, so in
the above, you would have:
-release=body,in,out,invariant
... which has the nice intuitive property of specifying _which
bits of code_ release criteria will be applied to.
In other words, -release=body would result in asserts being
removed from function bodies _and only there_. That would make
clearer that we're not removing asserts from e.g. unittests (or
indeed contracts or invariants).
More information about the Digitalmars-d
mailing list