I meant 'why not have version(noboundscheck) instead of version(D_NoBoundsChecks)' of course.
On Mon, Jun 3, 2013 at 4:48 PM, Timothee Cour <[email protected]>wrote: > Again, this seems like an unimportant technicality. > For user code, whether the logic is handled in the compiler or druntime > shouldn't make a difference, so why not have version(D_NoBoundsChecks) > instead of version(noboundscheck). It makes it more discoverable, and more > consistent with the rest (eg: dmd -debug will imply version(debug) is on). > > > On Mon, Jun 3, 2013 at 4:29 PM, Jonathan M Davis <[email protected]>wrote: > >> On Monday, June 03, 2013 15:19:22 Ali Çehreli wrote: >> > > B) >> > > Why aren't we using version=noboundscheck (+ friends) instead of >> > > -noboundscheck? >> > >> > Because the runtime is not written in D. :) However, it should be easy >> > to translate version=noboundscheck to -noboundscheck. >> >> The runtime _is_ written in D. It's the compiler that isn't, and the >> compiler >> itself generates different code based on noboundscheck. But the version >> D_NoBoundsChecks is new (it might even be new with this release - >> certainly at >> most it's a release or two old). We've had the noboundscheck flag far, far >> longer than that. The same goes for the assert version. It was only added >> very >> recently, but we've always had assertions. >> >> Also, if you'll notice, version is _never_ used to control anything that >> the >> compiler itself does. It affects code that you write, because of what >> you've >> done with version blocks, but the compiler itself doesn't change what it >> does >> due to the version flag save for which version blocks do or don't get >> compiled >> in. Compiler flags are used to control the compiler, not version >> identifiers. >> All of the standard identifiers are for user code to be able to react to >> what >> version of the compiler you're using, what system you're on, and what >> compilation flags you used. The only ones that get set by the user are >> user- >> defined versions. >> >> - Jonathan M Davis >> > >
