dim added a comment.
Hm, I would really say that `__isnan` and the other `__` prefixed functions are
Linuxisms, or more accurately, glibc-isms. They also don't exist on e.g. macOS:
$ cat check-isnan.cpp
#include <math.h>
int check_isnan(double d)
{
return ::__isnan(d);
}
$ clang -v
Apple clang version 11.0.0 (clang-1100.0.33.8)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
$ clang -c check-isnan.cpp
check-isnan.cpp:5:12: error: no member named '__isnan' in the global
namespace; did you mean 'isnan'?
return ::__isnan(d);
~~^~~~~~~
isnan
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/math.h:519:1:
note: 'isnan' declared here
isnan(_A1 __lcpp_x) _NOEXCEPT
^
1 error generated.
Why can't the regular `isnan` be used instead? Or is this a CUDA-specific
requirement? (Apologies, but I know next to nothing about CUDA :) )
Repository:
rC Clang
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D60220/new/
https://reviews.llvm.org/D60220
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits