PiJoules wrote: So the `#undef isnan` path in libcxx/include/__math/traits.h is definitely taken. I think perhaps the macro is redefined elsewhere by including the system math.h somewhere. https://github.com/llvm/llvm-project/pull/94533