Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
fd84397
Cody's original changes.
Nostracodus Aug 22, 2026
2afc353
clang-format, no manual changes.
StephanTLavavej Aug 22, 2026
e5c43d4
Sort exports.
StephanTLavavej Aug 22, 2026
4b81449
cstdlib: Undo unnecessary newline edits.
StephanTLavavej Aug 22, 2026
f291717
special_math.cpp: Sort definitions.
StephanTLavavej Aug 22, 2026
a5c8a04
special_math.cpp: Add const to parameters.
StephanTLavavej Aug 22, 2026
8c474dc
special_math.cpp: [Copilot review] Add TRANSITION comments for error …
StephanTLavavej Aug 22, 2026
2a9a570
yvals_core.h: Cleanups.
StephanTLavavej Aug 22, 2026
6cd7b38
__msvc_stdlib.hpp: __MSVC_STDLIB_HPP needs two underscores.
StephanTLavavej Aug 22, 2026
90ac69b
__msvc_stdlib.hpp: Remove _M_CEE_PURE logic.
StephanTLavavej Aug 22, 2026
7a674c7
__msvc_stdlib.hpp: Avoid macro-like params `_X`, `_A1`, `_A2`.
StephanTLavavej Aug 22, 2026
38d94b8
__msvc_stdlib.hpp: This must be a core header because cstdlib is core.
StephanTLavavej Aug 22, 2026
85322ac
__msvc_stdlib.hpp: Drop `extern "C"` block, the whole header is `_CRT…
StephanTLavavej Aug 22, 2026
2787e02
__msvc_stdlib.hpp: Comment the end of extern "C++".
StephanTLavavej Aug 22, 2026
2ed01fa
__msvc_stdlib.hpp: Comment how this file was derived, restore comment…
StephanTLavavej Aug 22, 2026
ca2df3d
__msvc_stdlib.hpp: Add and use `_CONSTEXPR_CSTDLIB23`.
StephanTLavavej Aug 22, 2026
dbdaade
__msvc_math.hpp: Change comment about atan2 underflow to be permanent.
StephanTLavavej Aug 22, 2026
5ddf29f
__msvc_math.hpp: Adjust push/pop to follow the usual pattern.
StephanTLavavej Aug 22, 2026
4c0ae56
__msvc_math.hpp: For exp2, `_STL_DECLARE_FAMILY1` should be paired wi…
StephanTLavavej Aug 22, 2026
14b2009
__msvc_math.hpp: Make the whole header extern "C" by default, move th…
StephanTLavavej Aug 22, 2026
5041802
__msvc_math.hpp: Fix overly-large extern "C++" scope: only the overlo…
StephanTLavavej Aug 22, 2026
0f0c21c
__msvc_math.hpp: Remove stray semicolon.
StephanTLavavej Aug 22, 2026
ecab065
__msvc_math.hpp: Use macros to define ilogb, lrint, llrint, rint.
StephanTLavavej Aug 22, 2026
940178c
__msvc_math.hpp: Expand the predicate macros, clean up their templates.
StephanTLavavej Aug 22, 2026
468e788
__msvc_math.hpp: Group the comparison templates with their other over…
StephanTLavavej Aug 22, 2026
9aae10c
__msvc_math.hpp: Restore/overhaul `_STL_DEF_OVERLOADED_PREDICATE_FAMI…
StephanTLavavej Aug 22, 2026
4bad1f2
__msvc_math.hpp: Fix and unwrap comments.
StephanTLavavej Aug 22, 2026
7613e00
__msvc_math.hpp: Attempt to always call `long double` builtins.
StephanTLavavej Aug 22, 2026
4333fa0
__msvc_math.hpp: Condense with `_STL_DEF_LASTARG_FAMILY2`.
StephanTLavavej Aug 22, 2026
6e362aa
__msvc_math.hpp: `_STL_DECLARE_FUNC2` was unused.
StephanTLavavej Aug 22, 2026
5224dd3
__msvc_math.hpp: `_STL_DEF_ROUNDING_FAMILY1` => `_STL_DEF_RETURN_FAMI…
StephanTLavavej Aug 22, 2026
636dc7c
__msvc_math.hpp: `long int` => `long`
StephanTLavavej Aug 22, 2026
addc709
__msvc_math.hpp: Condense with `_STL_DEF_LASTARG_FAMILY3`.
StephanTLavavej Aug 22, 2026
0d5b933
__msvc_math.hpp: Drop unnecessary comments about f/l suffixes.
StephanTLavavej Aug 22, 2026
09fadb7
__msvc_math.hpp: Cleanup signature comments.
StephanTLavavej Aug 22, 2026
0079154
__msvc_math.hpp: Simplify `_STL_DECLARE_FAMILY1` by declaring all thr…
StephanTLavavej Aug 22, 2026
4e7fe44
__msvc_math.hpp: Declare nanf/nan/nanl and define coshf/sinhf/tanhf a…
StephanTLavavej Aug 22, 2026
efadfdb
__msvc_math.hpp: Mark everything as `__cdecl`.
StephanTLavavej Aug 22, 2026
0993a52
__msvc_math.hpp: Add incantations for atan2, lrint.
StephanTLavavej Aug 22, 2026
1a381d7
__msvc_math.hpp: Reorder declarations to match sorted pragmas.
StephanTLavavej Aug 22, 2026
709db19
__msvc_math.hpp: Reduce pragmas to what's necessary.
StephanTLavavej Aug 22, 2026
715b38b
__msvc_math.hpp: Comment cleanups.
StephanTLavavej Aug 22, 2026
b62dc1b
__msvc_math.hpp: Reorder definitions to follow the Standard.
StephanTLavavej Aug 22, 2026
0864fdd
__msvc_math.hpp: We shouldn't need to static_cast the atan2 builtins.
StephanTLavavej Aug 22, 2026
63851d0
__msvc_math.hpp: Comment that `_NODISCARD` is desirable for frexp/rem…
StephanTLavavej Aug 22, 2026
74aa36d
__msvc_math.hpp: [Copilot review] Add `_CONSTEXPR_CMATH26_NYI_DECL` t…
StephanTLavavej Aug 22, 2026
20fdf66
__msvc_math.hpp: [Copilot review] Comment about the absence of Micros…
StephanTLavavej Aug 22, 2026
31024fa
__msvc_math.hpp: Drop `_j0`/`j0` etc. Bessel functions, superseded by…
StephanTLavavej Aug 22, 2026
77e6e2c
__msvc_math.hpp: Drop `_USE_MATH_DEFINES` including `<corecrt_math_de…
StephanTLavavej Aug 22, 2026
f371245
__msvc_math.hpp: OVERLOADED_PREDICATE => OVERLOADED_COMPARISON
StephanTLavavej Aug 22, 2026
ce57dd5
__msvc_math.hpp: Extract `_STL_DEF_OVERLOADED_CLASSIFICATION_FAMILY1`.
StephanTLavavej Aug 22, 2026
b799b25
__msvc_math.hpp: Fix ARM64 error C2169: 'fabsf': intrinsic function, …
StephanTLavavej Aug 22, 2026
7c2a0a7
cmath: Cleanup comments.
StephanTLavavej Aug 22, 2026
63e60b3
cmath: Change `_GENERIC_MATH1I`, `_GENERIC_MATH2I` to directly use th…
StephanTLavavej Aug 22, 2026
177ed2a
cmath: Define `_HAS_CMATH_BUILTINS` first, as `_HAS_CMATH_INTRINSICS`…
StephanTLavavej Aug 22, 2026
adb92df
cmath: Restore std::fma overloads for float and long double, now mark…
StephanTLavavej Aug 22, 2026
c0a103d
cmath: Add missing `_CONSTEXPR_CMATH23` to std::modf overloads for fl…
StephanTLavavej Aug 22, 2026
ac52da3
cmath: Remove `_CONSTEXPR_CMATH26` from acosh; it's NYI in __msvc_mat…
StephanTLavavej Aug 22, 2026
5c1bad6
cmath: Add `_CONSTEXPR_CMATH26` to match __msvc_math.hpp.
StephanTLavavej Aug 22, 2026
0cdcc24
cmath: Comment how we prefer builtins before intrinsics.
StephanTLavavej Aug 22, 2026
be99276
cmath: Reorder preprocessing to check builtins before intrinsics.
StephanTLavavej Aug 22, 2026
55e8e0e
cmath: Rename macro params for clarity, CLANG_INTRIN => BUILTIN and M…
StephanTLavavej Aug 22, 2026
b37f15d
cmath: Fix missing `_CONSTEXPR_CMATH23` on `frexp` and `_GENERIC_MATH…
StephanTLavavej Aug 22, 2026
471da80
cmath: Mark frexp/remquo/modf as _NODISCARD despite their out-params.
StephanTLavavej Aug 22, 2026
a67a6a7
VSO_0157762_feature_test_macros: Test the feature-test macro.
StephanTLavavej Aug 22, 2026
3b86862
Check `_MSVC_LIBC_MATH` which is properly defined, unlike `_MSVC_CONS…
StephanTLavavej Aug 22, 2026
2cc3ed7
[STL Vacation] P0533R9_constexpr_for_cmath_and_cstdlib: Add test cove…
StephanTLavavej Aug 22, 2026
e2575ac
P0533R9_constexpr_for_cmath_and_cstdlib: Partially remove workarounds…
StephanTLavavej Aug 22, 2026
bc948e4
P0533R9_constexpr_for_cmath_and_cstdlib: Partially remove workaround …
StephanTLavavej Aug 22, 2026
8e9e205
tests: MSVC-PR-766982 renamed /experimental:mathlib to /Zc:cmath, pas…
StephanTLavavej Aug 22, 2026
bbf8098
__msvc_math.hpp: Cite LLVM-214934 for atan2 underflow.
StephanTLavavej Aug 22, 2026
2f96734
__msvc_math.hpp: [Copilot review] Constrain the comparisons for arith…
StephanTLavavej Aug 22, 2026
a71356b
__msvc_math.hpp: [Copilot review] Undef `_CONSTEXPR_CMATH26_NYI_DECL`.
StephanTLavavej Aug 22, 2026
8928c0a
__msvc_stdlib.hpp: [Copilot review] Undef `_CONSTEXPR_CSTDLIB23`.
StephanTLavavej Aug 22, 2026
8077b97
__msvc_stdlib.hpp: Remove `_M_CEE_MIXED` checks.
StephanTLavavej Aug 22, 2026
26de406
__msvc_stdlib.hpp: Remove `__cplusplus` checks.
StephanTLavavej Aug 22, 2026
7f487a3
P0533R9_constexpr_for_cmath_and_cstdlib: Partially remove workaround …
StephanTLavavej Aug 22, 2026
fc6951a
__msvc_math.hpp: Fix/refine the cosh/sinh/tanh polyfill workarounds.
StephanTLavavej Aug 22, 2026
344c38a
__msvc_math.hpp: Explain why functions are hand-crafted.
StephanTLavavej Aug 22, 2026
034c37f
P0533R9_constexpr_for_cmath_and_cstdlib: Add test coverage for C++26-…
StephanTLavavej Aug 22, 2026
19aa5f3
yvals_core.h, VSO_0157762_feature_test_macros: Cite tracking issue fo…
StephanTLavavej Aug 23, 2026
b2a308f
__msvc_math.hpp: Refine the atan2() workaround.
StephanTLavavej Aug 23, 2026
829c47a
__msvc_math.hpp, yvals_core.h: Lift `_CONSTEXPR_CMATH26_NYI`, add TRA…
StephanTLavavej Aug 23, 2026
3da5d5d
cmath: Pass `_CONSTEXPR_CMATH23/26/26_NYI` to `_GENERIC_MATH`.
StephanTLavavej Aug 23, 2026
42b471a
cmath, P0533R9_constexpr_for_cmath_and_cstdlib: Mark 3-arg hypot as 2…
StephanTLavavej Aug 23, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion stl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,14 @@ set(HEADERS
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_heap_algorithms.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_int128.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_iter_core.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_math.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_minmax.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_ostream.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_print.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_ranges_to.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_ranges_tuple_formatter.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_sanitizer_annotate_container.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_stdlib.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_string_view.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_system_error_abi.hpp
${CMAKE_CURRENT_LIST_DIR}/inc/__msvc_threads_core.hpp
Expand Down Expand Up @@ -397,7 +399,7 @@ add_compile_definitions(_CRTBLD _HAS_OLD_IOSTREAMS_MEMBERS=1)
set(CMAKE_MSVC_DEBUG_INFORMATION_FORMAT "Embedded")

add_compile_options(/nologo /WX /Gy
"$<$<COMPILE_LANGUAGE:CXX>:/diagnostics:caret;/W4;/w14265;/w15038;/fastfail;/guard:cf;/Zp8;/std:c++latest;/permissive-;/Zc:preprocessor;/Zc:threadSafeInit-;/Zl>"
"$<$<COMPILE_LANGUAGE:CXX>:/diagnostics:caret;/W4;/w14265;/w15038;/fastfail;/guard:cf;/Zp8;/std:c++latest;/permissive-;/Zc:preprocessor;/Zc:threadSafeInit-;/Zc:cmath-;/Zl>"
"$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<IN_LIST:${VCLIBS_TARGET_ARCHITECTURE},x64;arm64;arm64ec>>:/guard:ehcont>"
"$<$<AND:$<COMPILE_LANGUAGE:CXX>,$<IN_LIST:${VCLIBS_TARGET_ARCHITECTURE},arm64;arm64ec>>:/guard:signret>"
"$<$<COMPILE_LANGUAGE:ASM_MASM>:/W3;/quiet>"
Expand Down
510 changes: 510 additions & 0 deletions stl/inc/__msvc_math.hpp

Large diffs are not rendered by default.

Loading