From 21dc1aa4daff6db132cff06c56d47d83d5acfada Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Fri, 8 May 2026 10:58:02 -0700 Subject: [PATCH 1/2] Pre-existing: ABI warning C5291 is off-by-default. Followup to GH 5645 on 2025-07-15. --- stl/inc/yvals_core.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/stl/inc/yvals_core.h b/stl/inc/yvals_core.h index 756b3610a4f..2d71660b57b 100644 --- a/stl/inc/yvals_core.h +++ b/stl/inc/yvals_core.h @@ -790,7 +790,7 @@ // warning C5285: cannot declare a specialization for 'meow' // warning C5291: 'DERIVED': deriving from the base class 'BASE' can cause potential runtime issues // due to an ABI bug. Recommend adding a 4-byte data member to the base class -// for the padding at the end of it to work around this bug. (TRANSITION, ABI) +// for the padding at the end of it to work around this bug. (/Wall, TRANSITION, ABI) // warning C6294: Ill-defined for-loop: initial condition does not satisfy test. Loop body not executed #ifndef _STL_DISABLED_WARNINGS From ad4bb5eaaf05898fd8e29cb69d6167017f86fee1 Mon Sep 17 00:00:00 2001 From: "Stephan T. Lavavej" Date: Fri, 8 May 2026 11:11:58 -0700 Subject: [PATCH 2/2] Add new off-by-default warning C4877 to `_STL_DISABLE_DEPRECATED_WARNING`. Implemented by MSVC-PR-734301 on 2026-05-01. Should revert selfbuild fix MSVC-PR-734920 on 2026-05-04. --- stl/inc/yvals_core.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/stl/inc/yvals_core.h b/stl/inc/yvals_core.h index 2d71660b57b..493ab7e587a 100644 --- a/stl/inc/yvals_core.h +++ b/stl/inc/yvals_core.h @@ -886,9 +886,11 @@ _Pragma("clang diagnostic push") \ _Pragma("clang diagnostic ignored \"-Wdeprecated-declarations\"") #else // ^^^ defined(__clang__) / !defined(__clang__) vvv +// warning C4877: overriding non-pure virtual function 'Base::meow': was declared deprecated (/Wall) +// warning C4996: 'meow': was declared deprecated #define _STL_DISABLE_DEPRECATED_WARNING \ _Pragma("warning(push)") \ - _Pragma("warning(disable : 4996)") // was declared deprecated + _Pragma("warning(disable : 4877 4996)") #endif // ^^^ !defined(__clang__) ^^^ #endif // _STL_DISABLE_DEPRECATED_WARNING // clang-format on