Jack Stouffer wrote:

This is something that valgrind could have easily picked up, but the devs just didn't use it for some reason. Runtime checking of this stuff is important, so please, don't disable safety checks with DMD if you're dealing with personal info.

or, even better: don't disable bounds checking at all. never.

if you are *absolutely* sure that bounds checking *IS* the bottleneck (you *did* used your profiler to find this out, did you?), you can selectively avoid bounds checking by using `arr.ptr[i]` instead of `arr[i]` (and yes, this is unsafe; but what would you expect by removing safety checks?).

forget about "-release" dmd arg. forget about "-boundscheck=off". no, really, they won't do you any good. after all, catching a bug in your program when it doesn't run in controlled environment is even more important than catching a bug in debugging session! don't hate your users by giving 'em software with all safety measures removed! please.

Reply via email to