https://bugs.winehq.org/show_bug.cgi?id=49828
--- Comment #7 from Jacek Caban jacek@codeweavers.com --- I think that current logic is fine. The usual use case for MSVC mode is to use distro provided clang - it should be as simple as installing default clang with the package manager. When llvm-mingw is installed, it's presumably for a reason and defaulting to it seems fine. It then falls into the same checks as GCC and we use it like that.
It came out due to a problem with making functions hotpatchable in clang-based builds (ideally both mingw and msvc, IMHO). GCC provides __ms_hook_prologue__ for that. At some point Chip implemented that for that attribute for clang, but it was later reverted. There were later efforts to implement it in MSVC compatible way. Now that I looked again, it seems that it's not yet complete on LLVM side, but some parts landed: https://reviews.llvm.org/D49366 https://reviews.llvm.org/D81301