From 5a6edc999831ed4fab7cd8ced672e6c1906dea81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Franz=20P=C3=B6schel?= Date: Wed, 21 Jan 2026 06:49:59 +0100 Subject: [PATCH] Exclude MSVC up to 19.16 from using std::launder (#5968) * Exclude further MSVC versions from std::launder Versions 19.4, 19.5 and 19.6 now also excluded. Error seen with 19.6, error triggered by this commit: https://github.com/pybind/pybind11/commit/57b9a0af815d19b236b74be06a172bc5c9956618 _deps\fetchedpybind11-src\include\pybind11\pybind11.h(3008): fatal error C1001: An internal error has occurred in the compiler. [C:\projects\openpmd-api\build\openPMD.py.vcxproj] (compiler file 'd:\agent\_work\8\s\src\vctools\compiler\utc\src\p2\main.c', line 187) To work around this problem, try simplifying or changing the program near the locations listed above. Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information * Add minimal comment // See PR #5968 --------- Co-authored-by: Ralf W. Grosse-Kunstleve --- include/pybind11/detail/common.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/pybind11/detail/common.h b/include/pybind11/detail/common.h index 4406adf5b..19ebc8532 100644 --- a/include/pybind11/detail/common.h +++ b/include/pybind11/detail/common.h @@ -87,7 +87,7 @@ # endif #endif -#if defined(__cpp_lib_launder) && !(defined(_MSC_VER) && (_MSC_VER < 1914)) +#if defined(__cpp_lib_launder) && !(defined(_MSC_VER) && (_MSC_VER < 1920)) // See PR #5968 # define PYBIND11_STD_LAUNDER std::launder # define PYBIND11_HAS_STD_LAUNDER 1 #else