В общем случае не очень хорошая идея для реального использования на std::numeric_limits<double>::is_iec559
, потому что с g ++ это верно, даже если ваш код скомпилирован с опцией fastmath, которая, например, не поддерживает поведение IEEE 754 NaN (этов основном просто представление, совместимое с двоичным уровнем).
Т.е. на практике is_iec559
не сообщает вам, соответствует ли реализация IEEE 754.
Итак, вы переходите к компилятору-специфичные средства.
Приветствия & hth.,