Деление по комплексу <double> в clang ++ против g ++
Когда я компилирую следующий код с помощью g ++ (4.8.1 или 4.9.0) или clang ++ (3.4), я получаю разные результаты.
#include <iostream>
#include <complex>
int main() {
std::complex<double> c = {1.e-162,0};
std::cout << 1.0/c << std::endl;
return 0;
}
г ++:
(1e+162,0)
лязг ++:
(inf,-nan)
Это ошибка в Clang?
Обновить:
Спасибо за ответ! Я сообщил об ошибке:http://llvm.org/bugs/show_bug.cgi?id=19820