Timo Kreuzer
736fea6c44
[CRT] math.h: fix definition of NAN
...
- Use positive NAN by default
- add support for _UCRT_NEGATIVE_NAN to legacy CRT headers
- Use __builtin_nanf() on GCC/Clang
2025-02-12 16:54:45 +02:00
Timo Kreuzer
de3a6706e7
[UCRT] fenv.h: Fix GCC build of _Fenv1
2025-01-30 11:30:32 +02:00
Timo Kreuzer
a438d7c3b8
[UCRT] Add GCC compatible definition of _CRT_STDIO_INLINE
...
In C99 mode GCC emits global symbols for inline functions, as soon as the compilation unit contains a declaration that marks the function as "extern". A number of functions like printf are implicitly declared as extern by GCC, which seemingly cannot be disabled. This would lead to the inline function being emitted as a global symbol in every compilation unit. Using static inline prevents duplicate symbol errors.
2025-01-30 11:30:32 +02:00
Timo Kreuzer
4ca68ffb1c
[UCRT] Make __local_stdio_printf/scanf_options GCC compatible
2025-01-30 11:30:32 +02:00
Timo Kreuzer
9db517f324
[UCRT] Fix definition of _alloca for GCC/Clang
2025-01-22 18:56:08 +02:00
Timo Kreuzer
42e9c80279
[UCRT] Fix definition of offsetof for clang-cl
2025-01-16 14:18:53 +02:00
Timo Kreuzer
51e6ce3aa7
[UCRT] Add GCC compatible __FUNCTIONW__
2025-01-16 14:18:53 +02:00
Timo Kreuzer
589bbcaa08
[UCRT] Include intrin.h for __debugbreak()
2025-01-16 14:18:53 +02:00
Timo Kreuzer
faedd8ff75
[UCRT] Use GCC inline assembler
...
Clang requires the asm to be split, otherwise it complains that it doesn't have enough registers.
2025-01-16 14:18:53 +02:00
Timo Kreuzer
04e0dc4a7a
[UCRT] Import Microsoft.Windows.SDK.CRTSource version 10.0.22621.3
...
Imported from https://www.nuget.org/packages/Microsoft.Windows.SDK.CRTSource/10.0.22621.3
License: MIT
2025-01-16 14:18:53 +02:00