Robert Dewar <[EMAIL PROTECTED]> writes: | Gabriel Dos Reis wrote: | > Robert Dewar <[EMAIL PROTECTED]> writes: | > | Gabriel Dos Reis wrote: | > | | > The strict aliasing rule by itself does not show it is not a | > high level | > | > assembly language. There are chips out there where you cannot access | > | > data willy-nilly through random register types. | > | | And there are chips for which signed arithmetic is not wrap | > around! | > yes, but that is irrelevant, the assumptin was made that | > one knows what the chip provides. | | And if the chip provides two consistent models of arithmetic, you cannot | deduce from the standard that one is preferred over the other (e.g. logical
At this point, we're not talking about what the standard abstractly says. But, what the *implementation* says or could say. We're talking about the implementation-defined semantics of numeric_limits<T>::is_modulo. But I guess you will refuse to get real just as you will deny that any there is any connection between C, C++ and hardware. [...] | As I said in an earlier message, the issue here is one of tradeoffs. Did you miss the previous messages where it was clearly indicated that people were aware of that? [...] | In the case of overflow, everyone would agree on avoiding the undefined | behavior if it is cheap enough. If it is not cheap enough, then I think | most people would accept the undefined status. | | How can you make an informed decision with no data in a case like this? In case you may not have noticed, people offered to run tests and send some numbers. -- Gaby