2f9c5234
by Vitaly Lipatov at 2026-04-09T22:25:27+02:00
include: Fix _LIBCPP_DEFER_NEW_TO_VCRUNTIME not being set with old clang.
When clang < 13 cross-compiles for Windows, it sets _MSC_VER to 1911
(< 1912). The #if/#elif chain in __config checked _MSC_VER < 1912 first,
which prevented the elif branch from defining _LIBCPP_DEFER_NEW_TO_VCRUNTIME.
This caused placement new/delete to be defined in both vcruntime_new.h and
the libc++ <new> header, resulting in redefinition errors.
Since Wine always provides aligned allocation operators in vcruntime_new.h,
simply remove the _MSC_VER < 1912 cases and always define
_LIBCPP_DEFER_NEW_TO_VCRUNTIME when using the Microsoft ABI with vcruntime.