Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

__builtin_isinf, __builtin_isnan, __builtin_isfinite not working on Mac OS X 10.10

Christophe_H_Intel2
1,218 Views

On Mac OS X 10.10.5 using Intel compiler version 16.0.0 the functions __builtin_isnan, __builtin_isinf, and __bultin_isfinite are not implemented correctly.

Here is a minimal test-case against the Intel compiler:

 

#include <iostream>
#include <cmath>

int main(int argc, char const * argv[])
{
    std::cout
        << std::isnan(0.0/0.0)    << " " << __builtin_isnan(0.0/0.0)    << "\n"
        << std::isinf(1.0/0.0)    << " " << __builtin_isinf(1.0/0.0)    << "\n"
        << std::isfinite(1.0/0.0) << " " << __builtin_isfinite(1.0/0.0) << "\n";
}

which when compiled with icpc -fp-model strict test.cpp -o test prints

1 0
1 0
0 1

Thanks.

 

0 Kudos
1 Reply
KitturGanesh
Employee
1,218 Views

Hi Chris,
Thanks for bringing this up. I'll file this issue with our developers and will keep you updated. Appreciate your patience till then.

_Kittur

0 Kudos
Reply