3 ms·
This isn't a good idea either: if you're dealing with undefined behavior the way the complier translates your code can change from version to version, so you co
by GTP 7y ago
This isn't a good idea either: if you're dealing with undefined behavior the way the complier translates your code can change from version to version, so you could end up with a code that works with the current version of GCC but doesn't work on the next. Personally I don't agree with the way GCC and other comipers deal with UB, but this would be off topic.
- JoeAltmaier 7y agoHm. May be off-topic by now. Incrementing an int is going to work the same on the same hardware, forever. Nothing the compile has any say in.
- flatfinger 7y agoIf a compiler decides that it's going to process: unsigned mul(unsigned short x, unsigned short y) { return x*y; } in a way that causes calling code to behave in meaningless fashion if x would exceed INT_MAX/y [something gcc will sometimes actually do, by the way, with that exact function!], the hardware isn't going to have any say in that.