
26.4.0.3> If the result of a function is not mathematically defined or not in the range of representable values for its type, the behavior is undefined.
This is not one of those cases, since the result is indeed mathematically defined and is representable as a perfectly normal value.
De-normalized numbers are apparently not supported.
I don't see how denormalized numbers are related to this.
I do totally agree with you. I am not arguing against you. I am just providing the extracts of the norm more or less (rather less in this case) related to the question of precision that has been risen earlier in the discussion. The original question still remains. Should a boost::complex class rely on the std::complex implementation no matter how (im-)precise or should boost provide a truly precise complex class. Regards, M. -- Matthieu Schaller