mirror of
https://github.com/libsdl-org/SDL.git
synced 2025-10-08 02:46:26 +00:00

cl.exe versions ≥v19.41 call this builtin for double → uint64_t conversions on x86. SDL currently needs such conversions in: * MainCallbackRateHintChanged() * SDL_PrintFloat() * WIN_ApplyWindowProgress() This seems enough to justify implementing this function rather than trying to work around it, as it was done in sdl12-compat: https://github.com/libsdl-org/sdl12-compat/issues/352 This implementation was taken from ReactOS: https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f637e6b809adb5e0ae420ef4f80c73b19172a2e7 Passes the stdlib testautomation, and also matches the behavior of Microsoft's 64-bit libc for the currently implementation-defined case of calling SDL_PrintFloat() with values >SDL_MAX_UINT64.