The following code fails to link when using icpc 14.0.0 and boost 1.54 or 1.53:
#include <boost/lexical_cast.hpp>
#include <string>
int main()
{
const float f(0.123f);
boost::lexical_cast<std::string>(f);
return 0;
}
Commmand line:
icpc -std=c++11 -I boost_1_54_0/ icpc_14_builtin_signbit_failure.cpp
Output:
/tmp/icpcZV9IvT.o: In function `main':
icpc_14_builtin_signbit_failure.cpp:(.text+0x65): undefined reference to `__builtin_signbit'
icpc_14_builtin_signbit_failure.cpp:(.text+0xa8): undefined reference to `__builtin_signbit'
It compiles fine if -std=c++11 is not specified. It also compiles fine with icpc 13.1.3 and -std=c++11 defined.
I have attached a file with the complete source for reproduction.
This is a showstopper for upgrading to the new compilers.