<div>A)</div>whether the logic is done in compiler or druntime shouldn't matter to user, so it'd be nice to use as uniform syntax as possible, ie:<div>dmd -version=noboundscheck should be supported (in addition to existing -noboundscheck) </div>
<div>Implementation can then use that version flag to set compiler flag -noboundscheck.</div><div><br></div><div>B)</div><div>noboundscheck can be used in library code as well for similar bounds checking semantics: for example, checking index bounds inside a user defined opIndex method. Hence distinguishing between compiler flag vs version flag doesn't make that much sense.</div>
<div><br></div><div>C)</div><div>It was introduced here:</div><div><a href="https://github.com/D-Programming-Language/dlang.org/commit/a4e2aa3ef7e4a6eec1c726ac9492221507cacfcf#version.dd">https://github.com/D-Programming-Language/dlang.org/commit/a4e2aa3ef7e4a6eec1c726ac9492221507cacfcf#version.dd</a></div>
<div>by @alexrp.</div><div><br></div><div>Since it wasn't in any change log, it's recent and makes sense, can we start a deprecation path to have D_NoBoundsChecks => noboundscheck ?</div><div><br></div><div><br>
<div class="gmail_quote">On Mon, Jun 3, 2013 at 5:46 PM, Jonathan M Davis <span dir="ltr"><<a href="mailto:jmdavisProg@gmx.com" target="_blank">jmdavisProg@gmx.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Monday, June 03, 2013 16:49:29 Timothee Cour wrote:<br>
> I meant 'why not have version(noboundscheck) instead of<br>
> version(D_NoBoundsChecks)'<br>
> of course.<br>
<br>
</div>So, you're complaining about the name of the version identifier? I thought that<br>
you were complaining that we were using a flag instead a version identifier to<br>
turn on noboundscheck.<br>
<br>
I don't know why that name was chosen or even who chose it. If you look at the<br>
list of official identifiers, you can see that it's pretty arbitrary as to what<br>
the exact naming scheme is. Not even the casing is consistent. So, I expect<br>
that D_NoBoundsCheck was chosen simply because whoever picked it thought that<br>
it best followed the generally naming scheme, or they just preferred that<br>
name. As it stands, there's really no hope of being able to figure out what any<br>
of the official version identifiers are without looking them up and memorizing<br>
them - including the spelling and whatever other naming quirks that particular<br>
identifier may have. And unfortunately, there's no way that that's going to be<br>
fixed at this point due to code breakage that it would cause.<br>
<br>
You might be able to get D_NoBoundsChecks changed given how new it is, but I<br>
don't know.<br>
<span class="HOEnZb"><font color="#888888"><br>
- Jonathan M Davis<br>
</font></span></blockquote></div><br></div><div><br></div>