diff --git a/stl/inc/xutility b/stl/inc/xutility index fb9f7f3534c..a7d4f3315b0 100644 --- a/stl/inc/xutility +++ b/stl/inc/xutility @@ -21,7 +21,7 @@ _STL_DISABLE_CLANG_WARNINGS #pragma push_macro("new") #undef new -#if (defined(_M_IX86) || defined(_M_X64) && !defined(_M_ARM64EC)) && !defined(_M_CEE_PURE) && !defined(_M_HYBRID) +#if (defined(_M_IX86) || defined(_M_X64)) && !defined(_M_CEE_PURE) && !defined(_M_HYBRID) && !defined(_M_ARM64EC) #define _USE_STD_VECTOR_ALGORITHMS 1 #else #define _USE_STD_VECTOR_ALGORITHMS 0 diff --git a/stl/msbuild/stl_atomic_wait/stl_atomic_wait.files.settings.targets b/stl/msbuild/stl_atomic_wait/stl_atomic_wait.files.settings.targets index 04fe9f16419..05ac026443d 100644 --- a/stl/msbuild/stl_atomic_wait/stl_atomic_wait.files.settings.targets +++ b/stl/msbuild/stl_atomic_wait/stl_atomic_wait.files.settings.targets @@ -28,8 +28,8 @@ SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - - + + diff --git a/stl/msbuild/stl_base/msvcp.settings.targets b/stl/msbuild/stl_base/msvcp.settings.targets index 47739eb1009..78eed2ebea3 100644 --- a/stl/msbuild/stl_base/msvcp.settings.targets +++ b/stl/msbuild/stl_base/msvcp.settings.targets @@ -89,7 +89,7 @@ SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception - + $(IntermediateOutputDirectoryEC)\_tolower.obj; @@ -213,7 +213,7 @@ SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception $(IntermediateOutputDirectoryEC)\xthrow.obj; $(IntermediateOutputDirectoryEC)\winapisupp.obj; $(IntermediateOutputDirectoryEC)\dllmain.obj; - $(IntermediateOutputDirectoryEC)\instances.obj + $(IntermediateOutputDirectoryEC)\instances.obj; @@ -223,16 +223,16 @@ SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception $(IntermediateOutputDirectoryEC)\nothrow.obj; $(IntermediateOutputDirectoryEC)\parallel_algorithms.obj; $(IntermediateOutputDirectoryEC)\sharedmutex.obj; - $(IntermediateOutputDirectoryEC)\vector_algorithms.obj + $(IntermediateOutputDirectoryEC)\vector_algorithms.obj; - + - + false true diff --git a/stl/src/vector_algorithms.cpp b/stl/src/vector_algorithms.cpp index 083807c977f..88a5e5649f9 100644 --- a/stl/src/vector_algorithms.cpp +++ b/stl/src/vector_algorithms.cpp @@ -5,7 +5,12 @@ // injected into the msvcprt.lib and msvcprtd.lib import libraries. // Do not include or define anything else here. // In particular, basic_string must not be included here. -#if (defined(_M_IX86) || defined(_M_X64) && !defined(_M_ARM64EC)) && !defined(_M_CEE_PURE) + +#ifdef _M_CEE_PURE +#error _M_CEE_PURE should not be defined when compiling vector_algorithms.cpp. +#endif + +#if (defined(_M_IX86) || defined(_M_X64)) && !defined(_M_ARM64EC) #include #include @@ -418,4 +423,4 @@ __declspec(noalias) void __cdecl __std_reverse_copy_trivially_copyable_8( } // extern "C" -#endif // (defined(_M_IX86) || defined(_M_X64) && !defined(_M_ARM64EC)) && !defined(_M_CEE_PURE) +#endif // (defined(_M_IX86) || defined(_M_X64)) && !defined(_M_ARM64EC)