From 39097109f232d693ff00de00bebc66b80c37a0e7 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 09:10:59 -0700 Subject: [PATCH 01/10] _Stof family: don't declare in stl/inc, comment as preserved for bincompat in stl/src. They're marked as _CRTIMP2_PURE in stl/src, so they'll continue to be exported. --- stl/inc/xlocinfo | 4 ---- stl/inc/xlocnum | 4 ---- stl/src/xstod.cpp | 2 ++ stl/src/xstof.cpp | 2 ++ stl/src/xstold.cpp | 2 ++ stl/src/xwstod.cpp | 2 ++ stl/src/xwstof.cpp | 2 ++ stl/src/xwstold.cpp | 2 ++ 8 files changed, 12 insertions(+), 8 deletions(-) diff --git a/stl/inc/xlocinfo b/stl/inc/xlocinfo index 702cf430c04..096fe2e21c2 100644 --- a/stl/inc/xlocinfo +++ b/stl/inc/xlocinfo @@ -60,10 +60,6 @@ _MRTIMP2 _Success_(return >= 0) int __cdecl _Mbrtowc( _When_(_Max_multibyte != 0, _Out_) wchar_t*, const char*, size_t _Max_multibyte, mbstate_t*, const _Cvtvec*); #endif // _M_CEE_PURE -_CRTIMP2_PURE float __CLRCALL_PURE_OR_CDECL _Stof(const char*, _Out_opt_ _Deref_post_opt_valid_ char**, long); -_CRTIMP2_PURE double __CLRCALL_PURE_OR_CDECL _Stod(const char*, _Out_opt_ _Deref_post_opt_valid_ char**, long); -_CRTIMP2_PURE long double __CLRCALL_PURE_OR_CDECL _Stold(const char*, _Out_opt_ _Deref_post_opt_valid_ char**, long); - _CRTIMP2_PURE int __CLRCALL_PURE_OR_CDECL _Strcoll(const char*, const char*, const char*, const char*, const _Collvec*); _CRTIMP2_PURE size_t __CLRCALL_PURE_OR_CDECL _Strxfrm(_Out_writes_(_End1 - _String1) _Post_readable_size_(return) char* _String1, diff --git a/stl/inc/xlocnum b/stl/inc/xlocnum index 7b935d52543..b47de270f89 100644 --- a/stl/inc/xlocnum +++ b/stl/inc/xlocnum @@ -24,10 +24,6 @@ _STL_DISABLE_CLANG_WARNINGS _EXTERN_C_UNLESS_PURE -_CRTIMP2_PURE float __CLRCALL_PURE_OR_CDECL _Stofx(const char*, _Out_opt_ _Deref_post_opt_valid_ char**, long, int*); -_CRTIMP2_PURE double __CLRCALL_PURE_OR_CDECL _Stodx(const char*, _Out_opt_ _Deref_post_opt_valid_ char**, long, int*); -_CRTIMP2_PURE long double __CLRCALL_PURE_OR_CDECL _Stoldx( - const char*, _Out_opt_ _Deref_post_opt_valid_ char**, long, int*); _CRTIMP2_PURE long __CLRCALL_PURE_OR_CDECL _Stolx(const char*, _Out_opt_ _Deref_post_opt_valid_ char**, int, int*); _CRTIMP2_PURE unsigned long __CLRCALL_PURE_OR_CDECL _Stoulx( const char*, _Out_opt_ _Deref_post_opt_valid_ char**, int, int*); diff --git a/stl/src/xstod.cpp b/stl/src/xstod.cpp index 34425729a3c..0fbd1ebd806 100644 --- a/stl/src/xstod.cpp +++ b/stl/src/xstod.cpp @@ -13,9 +13,11 @@ _EXTERN_C_UNLESS_PURE +// TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _Stodx(const CTYPE* s, CTYPE** endptr, long pten, int* perr) #include "xxstod.hpp" + // TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _Stod(const CTYPE* s, CTYPE** endptr, long pten) { // convert string, discard error code return _Stodx(s, endptr, pten, nullptr); diff --git a/stl/src/xstof.cpp b/stl/src/xstof.cpp index 1f0107573d3..2124ee26733 100644 --- a/stl/src/xstof.cpp +++ b/stl/src/xstof.cpp @@ -13,9 +13,11 @@ _EXTERN_C_UNLESS_PURE +// TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _Stofx(const CTYPE* s, CTYPE** endptr, long pten, int* perr) #include "xxstod.hpp" + // TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _Stof(const CTYPE* s, CTYPE** endptr, long pten) { // convert string, discard error code return _Stofx(s, endptr, pten, nullptr); diff --git a/stl/src/xstold.cpp b/stl/src/xstold.cpp index cea4090ffc4..d40e6f14cb4 100644 --- a/stl/src/xstold.cpp +++ b/stl/src/xstold.cpp @@ -13,9 +13,11 @@ _EXTERN_C_UNLESS_PURE +// TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _Stoldx(const CTYPE* s, CTYPE** endptr, long pten, int* perr) #include "xxstod.hpp" + // TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _Stold(const CTYPE* s, CTYPE** endptr, long pten) { // convert string, discard error code return _Stoldx(s, endptr, pten, nullptr); diff --git a/stl/src/xwstod.cpp b/stl/src/xwstod.cpp index a2a4c927158..e5e494738bb 100644 --- a/stl/src/xwstod.cpp +++ b/stl/src/xwstod.cpp @@ -12,9 +12,11 @@ _EXTERN_C_UNLESS_PURE +// TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _WStodx(const CTYPE* s, CTYPE** endptr, long pten, int* perr) #include "xxstod.hpp" + // TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _WStod(const CTYPE* s, CTYPE** endptr, long pten) { // convert string, discard error code return _WStodx(s, endptr, pten, nullptr); diff --git a/stl/src/xwstof.cpp b/stl/src/xwstof.cpp index 8419e7f4974..36ac55a2bbc 100644 --- a/stl/src/xwstof.cpp +++ b/stl/src/xwstof.cpp @@ -11,9 +11,11 @@ _EXTERN_C_UNLESS_PURE +// TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _WStofx(const CTYPE* s, CTYPE** endptr, long pten, int* perr) #include "xxstod.hpp" + // TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _WStof(const CTYPE* s, CTYPE** endptr, long pten) { // convert string, discard error code return _WStofx(s, endptr, pten, nullptr); diff --git a/stl/src/xwstold.cpp b/stl/src/xwstold.cpp index ff8bbe800fa..d4751b82e87 100644 --- a/stl/src/xwstold.cpp +++ b/stl/src/xwstold.cpp @@ -11,9 +11,11 @@ _EXTERN_C_UNLESS_PURE +// TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _WStoldx(const CTYPE* s, CTYPE** endptr, long pten, int* perr) #include "xxstod.hpp" + // TRANSITION, ABI: preserved for binary compatibility _CRTIMP2_PURE FTYPE __CLRCALL_PURE_OR_CDECL _WStold(const CTYPE* s, CTYPE** endptr, long pten) { // convert string, discard error code return _WStoldx(s, endptr, pten, nullptr); From c3bb5ec40224e5dec6ef1ab8548c198233f5b131 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 09:14:48 -0700 Subject: [PATCH 02/10] _GetLocaleForCP was declared but never defined; drop it. --- stl/inc/xlocinfo | 8 -------- 1 file changed, 8 deletions(-) diff --git a/stl/inc/xlocinfo b/stl/inc/xlocinfo index 096fe2e21c2..74a86b8e275 100644 --- a/stl/inc/xlocinfo +++ b/stl/inc/xlocinfo @@ -102,14 +102,6 @@ _Success_(return > 0) _ACRTIMP size_t __cdecl _Wcsftime( _Out_writes_z_(_Maxsize) wchar_t*, _In_ size_t _Maxsize, _In_z_ const wchar_t*, _In_ const tm*, _In_opt_ void*); _END_EXTERN_C -#ifdef _M_CEE_PURE -[System::Runtime::InteropServices::DllImport(_CRT_MSVCP_CURRENT, EntryPoint = "_GetLocaleForCP", - CallingConvention = System::Runtime::InteropServices::CallingConvention::Cdecl)] extern "C" _locale_t - _GetLocaleForCP(unsigned int); -#else // _M_CEE_PURE -_MRTIMP2 _locale_t __cdecl _GetLocaleForCP(unsigned int); -#endif // _M_CEE_PURE - _STD_BEGIN extern "C++" class _CRTIMP2_PURE_IMPORT _Timevec { // smart pointer to information used by _Strftime public: From 797c797bc0e8f6276920686889568c9146e78a4a Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 09:23:46 -0700 Subject: [PATCH 03/10] Qualify _STD getline(). Also, avoid calling a function before it's been declared (unintentional ADL and an unnecessary function call). --- stl/inc/string | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/stl/inc/string b/stl/inc/string index 7c939d25b42..93233e662d3 100644 --- a/stl/inc/string +++ b/stl/inc/string @@ -69,21 +69,21 @@ _EXPORT_STD template basic_istream<_Elem, _Traits>& getline( basic_istream<_Elem, _Traits>&& _Istr, basic_string<_Elem, _Traits, _Alloc>& _Str) { // get characters into string, discard newline - return getline(_Istr, _Str, _Istr.widen('\n')); + return _STD getline(_STD move(_Istr), _Str, _Istr.widen('\n')); } _EXPORT_STD template basic_istream<_Elem, _Traits>& getline( basic_istream<_Elem, _Traits>& _Istr, basic_string<_Elem, _Traits, _Alloc>& _Str, const _Elem _Delim) { // get characters into string, discard delimiter - return getline(_STD move(_Istr), _Str, _Delim); + return _STD getline(_STD move(_Istr), _Str, _Delim); } _EXPORT_STD template basic_istream<_Elem, _Traits>& getline( basic_istream<_Elem, _Traits>& _Istr, basic_string<_Elem, _Traits, _Alloc>& _Str) { // get characters into string, discard newline - return getline(_STD move(_Istr), _Str, _Istr.widen('\n')); + return _STD getline(_STD move(_Istr), _Str, _Istr.widen('\n')); } _EXPORT_STD _NODISCARD inline int stoi(const string& _Str, size_t* _Idx = nullptr, int _Base = 10) { From c5b54e6c05d98c45bd55a456a1eb333f529b0800 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 09:33:49 -0700 Subject: [PATCH 04/10] special_math.cpp doesn't need to define these macros anymore. --- stl/src/special_math.cpp | 2 -- 1 file changed, 2 deletions(-) diff --git a/stl/src/special_math.cpp b/stl/src/special_math.cpp index 425e5da2c48..84fd942081f 100644 --- a/stl/src/special_math.cpp +++ b/stl/src/special_math.cpp @@ -14,8 +14,6 @@ #pragma warning(disable : 5219) // implicit conversion from '%s' to '%s', possible loss of data #pragma warning(disable : 6326) // potential comparison of a constant with another constant -#define BOOST_CHRONO_HEADER_ONLY -#define BOOST_CONFIG_SUPPRESS_OUTDATED_MESSAGE #define BOOST_MATH_DOMAIN_ERROR_POLICY errno_on_error #define BOOST_MATH_OVERFLOW_ERROR_POLICY ignore_error From 1da8b4a7cf39577a3ed203553057717adf3afba1 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 09:40:32 -0700 Subject: [PATCH 05/10] special_math.cpp can suppress fewer warnings. --- stl/src/special_math.cpp | 4 ---- 1 file changed, 4 deletions(-) diff --git a/stl/src/special_math.cpp b/stl/src/special_math.cpp index 84fd942081f..14017e76601 100644 --- a/stl/src/special_math.cpp +++ b/stl/src/special_math.cpp @@ -8,10 +8,6 @@ #include #pragma warning(push) -#pragma warning(disable : 4619) // #pragma warning: there is no warning number '%d' -#pragma warning(disable : 4643) // Forward declaring '%s' in namespace std is not permitted by the C++ Standard -#pragma warning(disable : 4702) // unreachable code -#pragma warning(disable : 5219) // implicit conversion from '%s' to '%s', possible loss of data #pragma warning(disable : 6326) // potential comparison of a constant with another constant #define BOOST_MATH_DOMAIN_ERROR_POLICY errno_on_error From 47274a5dcbd78ef4c7fac7e612d21de05d225c31 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 09:48:29 -0700 Subject: [PATCH 06/10] Define `NonCopyableBool` and `b` separately. --- tests/std/tests/P0896R4_ranges_alg_is_permutation/test.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/std/tests/P0896R4_ranges_alg_is_permutation/test.cpp b/tests/std/tests/P0896R4_ranges_alg_is_permutation/test.cpp index e6338500551..47a0d362cae 100644 --- a/tests/std/tests/P0896R4_ranges_alg_is_permutation/test.cpp +++ b/tests/std/tests/P0896R4_ranges_alg_is_permutation/test.cpp @@ -142,7 +142,8 @@ struct instantiator { NonCopyableBool() = default; NonCopyableBool(const NonCopyableBool&) = delete; - } b; + }; + NonCopyableBool b; assert(ranges::is_permutation(range2, range2, [&](auto, auto) -> NonCopyableBool& { return b; })); } } From 2a65efbbc21a001566a734a1d5f6e140514aaec0 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Mon, 24 Oct 2022 18:15:52 -0700 Subject: [PATCH 07/10] Skip a libcxx test due to a possible path length issue. --- tests/libcxx/expected_results.txt | 4 ++++ tests/libcxx/skipped_tests.txt | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/tests/libcxx/expected_results.txt b/tests/libcxx/expected_results.txt index 5e22ed46990..ad44aa04c4f 100644 --- a/tests/libcxx/expected_results.txt +++ b/tests/libcxx/expected_results.txt @@ -1038,6 +1038,10 @@ std/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_copy_assignable.pass.cp std/utilities/meta/meta.unary/meta.unary.prop/is_nothrow_move_assignable.pass.cpp:0 FAIL std/utilities/tuple/tuple.tuple/tuple.cnstr/convert_const_move.pass.cpp FAIL +# Not yet analyzed, possible path length issue. With a repo root of D:\GitHub\STL (13 characters), fails with: +# "error RC2136 : missing '=' in EXSTYLE=" followed by "LINK : fatal error LNK1327: failure during running rc.exe" +std/thread/thread.mutex/thread.mutex.requirements/thread.sharedtimedmutex.requirements/thread.sharedtimedmutex.class/try_lock_until_deadlock_bug.pass.cpp SKIPPED + # *** XFAILs WHICH PASS *** # Nothing here! :-) diff --git a/tests/libcxx/skipped_tests.txt b/tests/libcxx/skipped_tests.txt index 6d2a34aa4e2..c16c1f5ded1 100644 --- a/tests/libcxx/skipped_tests.txt +++ b/tests/libcxx/skipped_tests.txt @@ -1038,6 +1038,10 @@ utilities\meta\meta.unary\meta.unary.prop\is_nothrow_copy_assignable.pass.cpp utilities\meta\meta.unary\meta.unary.prop\is_nothrow_move_assignable.pass.cpp utilities\tuple\tuple.tuple\tuple.cnstr\convert_const_move.pass.cpp +# Not yet analyzed, possible path length issue. With a repo root of D:\GitHub\STL (13 characters), fails with: +# "error RC2136 : missing '=' in EXSTYLE=" followed by "LINK : fatal error LNK1327: failure during running rc.exe" +thread\thread.mutex\thread.mutex.requirements\thread.sharedtimedmutex.requirements\thread.sharedtimedmutex.class\try_lock_until_deadlock_bug.pass.cpp + # *** SKIPPED FOR MSVC-INTERNAL CONTEST ONLY *** # "XFAIL: msvc" or "XFAIL: clang" From 9f4efd9724611ce1ce46f0747daad252b93a6464 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Tue, 25 Oct 2022 04:35:25 -0700 Subject: [PATCH 08/10] LLVM-46269 was fixed in Clang 15. Co-authored-by: Casey Carter --- stl/inc/expected | 2 -- stl/inc/iterator | 1 - stl/inc/ranges | 3 --- tests/std/tests/P0323R12_expected/test.cpp | 29 +++------------------- 4 files changed, 4 insertions(+), 31 deletions(-) diff --git a/stl/inc/expected b/stl/inc/expected index 3ee976b0628..97067967a35 100644 --- a/stl/inc/expected +++ b/stl/inc/expected @@ -321,7 +321,6 @@ public: } // clang-format off - // TRANSITION, LLVM-46269, destructor order is significant ~expected() requires is_trivially_destructible_v<_Ty> && is_trivially_destructible_v<_Err> = default; // clang-format on @@ -842,7 +841,6 @@ public: } // clang-format off - // TRANSITION, LLVM-46269, destructor order is significant ~expected() requires is_trivially_destructible_v<_Err> = default; // clang-format on diff --git a/stl/inc/iterator b/stl/inc/iterator index aa6b02001ed..3ae6e781e18 100644 --- a/stl/inc/iterator +++ b/stl/inc/iterator @@ -639,7 +639,6 @@ public: _Raw_clear(); } - // TRANSITION, LLVM-46269, destructor order is significant // clang-format off constexpr ~_Variantish() requires is_trivially_destructible_v<_Ty1> && is_trivially_destructible_v<_Ty2> = default; diff --git a/stl/inc/ranges b/stl/inc/ranges index 1c76f60f635..239a8906e49 100644 --- a/stl/inc/ranges +++ b/stl/inc/ranges @@ -265,7 +265,6 @@ namespace ranges { } } - // TRANSITION, LLVM-46269, destructor order is significant // clang-format off ~_Movable_box() requires is_trivially_destructible_v<_Ty> = default; @@ -480,7 +479,6 @@ namespace ranges { } } - // TRANSITION, LLVM-46269, destructor order is significant // clang-format off ~_Defaultabox() requires is_trivially_destructible_v<_Ty> = default; @@ -698,7 +696,6 @@ namespace ranges { } } - // TRANSITION, LLVM-46269, destructor order is significant // clang-format off ~_Non_propagating_cache() requires is_trivially_destructible_v<_Ty> = default; // clang-format on diff --git a/tests/std/tests/P0323R12_expected/test.cpp b/tests/std/tests/P0323R12_expected/test.cpp index 97238c75a7d..8879cdd7547 100644 --- a/tests/std/tests/P0323R12_expected/test.cpp +++ b/tests/std/tests/P0323R12_expected/test.cpp @@ -247,9 +247,7 @@ namespace test_expected { { // Check payload type using Expected = expected; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_copy_constructible_v == should_be_trivial); -#endif // !__clang__ static_assert(is_copy_constructible_v); const Expected with_value{in_place}; @@ -267,9 +265,7 @@ namespace test_expected { { // Check error type using Expected = expected; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_copy_constructible_v == should_be_trivial); -#endif // !__clang__ static_assert(is_copy_constructible_v); const Expected with_value{in_place}; @@ -287,9 +283,7 @@ namespace test_expected { { // Check void payload using Expected = expected; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_copy_constructible_v == should_be_trivial); -#endif // !__clang__ static_assert(is_copy_constructible_v); const Expected with_value{in_place}; @@ -339,9 +333,7 @@ namespace test_expected { { // Check payload type using Expected = expected; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_move_constructible_v == should_be_trivial); -#endif // !__clang__ static_assert(is_move_constructible_v); Expected value_input{in_place}; @@ -359,9 +351,7 @@ namespace test_expected { { // Check error type using Expected = expected; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_move_constructible_v == should_be_trivial); -#endif // !__clang__ static_assert(is_move_constructible_v); Expected value_input{in_place}; @@ -379,9 +369,7 @@ namespace test_expected { { // Check void payload using Expected = expected; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_move_constructible_v == should_be_trivial); -#endif // !__clang__ static_assert(is_move_constructible_v); Expected value_input{in_place}; @@ -410,15 +398,12 @@ namespace test_expected { template struct payload_destructor { constexpr payload_destructor(bool& destructor_called) : _destructor_called(destructor_called) {} - bool& _destructor_called; - }; - template <> // TRANSITION, LLVM-46269 - struct payload_destructor { - constexpr payload_destructor(bool& destructor_called) : _destructor_called(destructor_called) {} - payload_destructor(const payload_destructor&) = default; + // clang-format off + constexpr ~payload_destructor() requires (IsYes(triviallyDestructible)) = default; + // clang-format on constexpr ~payload_destructor() { _destructor_called = true; - }; + } bool& _destructor_called; }; @@ -428,9 +413,7 @@ namespace test_expected { bool destructor_called = false; { // Check payload using Expected = expected, int>; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_destructible_v == is_trivial); -#endif // !__clang__ Expected val{in_place, destructor_called}; } @@ -439,9 +422,7 @@ namespace test_expected { { // Check error using Expected = expected>; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_destructible_v == is_trivial); -#endif // !__clang__ Expected err{unexpect, destructor_called}; } @@ -450,9 +431,7 @@ namespace test_expected { { // Check void error using Expected = expected>; -#ifndef __clang__ // TRANSITION, LLVM-46269 static_assert(is_trivially_destructible_v == is_trivial); -#endif // !__clang__ Expected err{unexpect, destructor_called}; } From 759ee61bf20590a46d2c7c9dcf8cc58ffa4ce546 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Tue, 25 Oct 2022 04:40:43 -0700 Subject: [PATCH 09/10] Drop unused variables when configuring the benchmarks. Fixes: ``` CMake Warning: Manually-specified variables were not used by the project: LIT_FLAGS STL_USE_ANALYZE ``` --- azure-devops/cmake-configure-build.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/azure-devops/cmake-configure-build.yml b/azure-devops/cmake-configure-build.yml index 476278d0295..64a5c9c76cc 100644 --- a/azure-devops/cmake-configure-build.yml +++ b/azure-devops/cmake-configure-build.yml @@ -57,8 +57,6 @@ steps: cmake ${{ parameters.cmakeAdditionalFlags}} -G Ninja ^ -DCMAKE_CXX_COMPILER=cl ^ -DCMAKE_BUILD_TYPE=Release ^ - -DLIT_FLAGS=$(litFlags) ^ - -DSTL_USE_ANALYZE=ON ^ -DSTL_BINARY_DIR=$(${{ parameters.buildOutputLocationVar }}) ^ -S $(Build.SourcesDirectory)/benchmarks -B $(${{ parameters.benchmarkBuildOutputLocationVar }}) displayName: 'Configure the benchmarks' From 55c8ca148f2fc4ad3f3efd1a8acf2be4abc7e1a2 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Tue, 25 Oct 2022 20:26:21 -0700 Subject: [PATCH 10/10] Restore C4702 silencing for the internal build. --- stl/src/special_math.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/stl/src/special_math.cpp b/stl/src/special_math.cpp index 14017e76601..0f17568aaef 100644 --- a/stl/src/special_math.cpp +++ b/stl/src/special_math.cpp @@ -8,6 +8,7 @@ #include #pragma warning(push) +#pragma warning(disable : 4702) // unreachable code #pragma warning(disable : 6326) // potential comparison of a constant with another constant #define BOOST_MATH_DOMAIN_ERROR_POLICY errno_on_error