This seems to be a bug in Windows SDK version 10.0.26100.0, which defines NAN as a call to __ucrt_int_to_float() instead of as a constant. It is being tracked here.
As a workaround one can define _UCRT_NOISY_NAN to enable the legacy definition of the NAN macro, which can be seen here.