On 06.03.2018 11:17, Walter Bright wrote:
On 3/6/2018 1:58 AM, Jonathan M Davis wrote:
[...]

The entire point of making assert a core language feature was so that the compiler could take advantage of it to generate better code.

It does not need to be a core language feature for that.
It seems that you did the right thing for the wrong reasons.

It's been like that for D since day 1. It has always been documented to do that. It has been discussed many times in this n.g. over the years with loooong threads. I designed it that way so that D could potentially produce better code than other languages in ways they could not match.

There is no other purpose to making it a core language feature.
...

Yes. The (only!) purpose is standardization. asserts and contracts are a core language feature for similar reasons why unit tests are a core language feature.

...

Or just don't turn off assert checking. Personally, I use asserts in a way that they add little overhead so they can remain active in the release build.
...

Not everybody runs only their own code.

It's entirely under your control.

It is not. Could we please make it that way?

Reply via email to