4 ms·
> That's kind of what compilers are for. To be black boxes? Yes, they seem to have a long history of being that. If I want to implement a stack data type bein
by Dewie 12y ago
> That's kind of what compilers are for.
To be black boxes? Yes, they seem to have a long history of being that.
If I want to implement a stack data type being backed by an array, and I can not be sure that bounds checking is optimized away, I want to be able to turn off bounds checking if I'm 100% sure that my implementation indexes into the array in a correct way. I have all the information that I need about indexing into the array, since I don't expose indexing to whoever is using my stack. The compiler doesn't know more than me, in that sense. So why would I need compiler support - as in some graph which is a result of static analysis - in order to eliminate bounds checking?
- Animats 12y agoI want to be able to turn off bounds checking if I'm 100% sure But is everyone else 100% sure? Look at that CERT advisory I posted from Microsoft. "SafeBufferResize" - wasn't. Somebody at Microsoft was probably "100% sure". If a buffer overflow in your code meant being fired, would you turn off subscript checking?
- Dewie 12y ago> If a buffer overflow in your code meant being fired, would you turn off subscript checking? If I could get fired for my implementation not being efficient enough (and the performance hit from the bounds checking mattered as shown through benchmarking, yadda yadda), then yes. :)