c073c92c6a
`std::nan` converts a given string to a quiet NaN value in an implementation-defined way. It accepts an empty string, but that doesn't mean you can pass `nullptr`. Passing `nullptr` causes a segmentation fault on Linux but does not on macOS, which I think is why I missed that in the first place. Actually, `std::nan` isn't even really needed here, hence I replaced it with `NAN`.