On Fri Sep 29 11:28:24 2023 +0000, Alexandre Julliard wrote:
We tend to use the Unix names for such things, shouldn't there be an `__arm64ec__` define instead? Or maybe we should switch to using the _M_ defines for all platforms...
I was wondering about how those macros should work. AFAICT there is no `__arm64ec__` macro on MSVC, it was invented recently in clang by @bylaws: https://github.com/llvm/llvm-project/pull/65420. From compiler's perspective defining macros like __aarch64__ makes sense, because it's a standard everywhere outside MSVC. However, there is nothing to be compatible with in case of ARM64EC. In practice, this means that there will be an extra unneeded difference between mingw and MSVC. I'm tempted to suggest removing __arm64ec__ from clang before backward compatibility is an issue, but I'm not sure about that so opinions are welcomed.