On Wed, 17 Jan 2007, Mike Stump wrote: | On Jan 17, 2007, at 4:44 PM, Gabriel Dos Reis wrote: | > C++ forces compilers to reveal their semantics for built-in types | > through numeric_limits<>. Every time you change the behaviour, | > you also implicilty break an ABI. | | No, the ABI does not document that the answer never changes between | translation units, only that for this translation unit, what the | answer happens to be. If it said what you thought it said, you'd be | able to quote it. If you think I'm wrong, I look forward to the quote.
(1) the ABI I was talking about is that of libstdc++, not that of the processor. Sorry if that wasn't clearer (I switched to the library developer perspective, and should have made that clearer). Each time we make changes to libstdc++ ABI, people get very nervous. (2) numeric_limits<> cannot change from translation unit to translation unit, within the same program otherwise you break the ODR. I guess we all agree on that. -- Gaby