>> As for warning. I personally would argue that we are looking at >> platform-specific i.e. implementation-defined behaviour, not undefined. >> Once again, this applies to all three tickets. One is effectively >> identical to this one, second is about variable shift in CAST. As >> mentioned they all are conscious choices and are proven to work. BTW, >> specification gives following example of undefined behaviour: >> >> "EXAMPLE: An example of undefined behavior is the behavior on integer >> overflow." >> >> Well, one can argue about definition of "integer", but if we assume "any >> integer, signed or unsigned", then we depend on unsigned addition being >> non-saturating and overflow being ignored *all* *over* *the* *place*... >> > According to C99 overflow/wrapping of unsigned integer values is defined > to be modulo the range of the type. Here are the quotes:
Which is why I wrote "*if* we assume "any integer". This is getting off-topic. Yes, I brought up integer overflow, which is not directly related to the problem at hand. Sorry about that. If we want to discuss it, let's do it in separate thread. ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List [email protected] Automated List Manager [email protected]
