>> 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]

Reply via email to