[clang] [Clang] [Driver] Ensure `-fms-volatile` is set for x86 for `*-windows-msvc` triple on non cl driver modes (PR #107509)

Nico Weber via cfe-commits cfe-commits at lists.llvm.org
Mon Sep 9 18:27:17 PDT 2024


nico wrote:

(To be clear, I'm fine with landing this.)

> non conforming two phase lookup by default would also be a concern.

It is! There were quite a few discussions around this. Aha, see #42377.

We usually say the goal is to have a very standards compliant impl, while also being able to parse system headers. This can involve things like making things that should be errors instead be warnings that are mapped to errors by default (…but warnings are implicitly ignored in system headers), etc. https://docs.google.com/presentation/d/1oxNHaVjA9Gn_rTzX6HIpJHP7nXRua_0URXxxJ3oYRq0/edit#slide=id.p / https://www.youtube.com/watch?v=rXi065XC6zY talks about this some, in case you haven't seen it :)

Re cross builds: That's something we do too. For case insensitivity, other than symlinks, one possible approach is to use FUSE with ciopfs (https://source.chromium.org/chromium/chromium/src/+/main:build/vs_toolchain.py;l=504?q=ciopfs). Another approach is -ivfsoverlay. The git log of llvm/cmake/platforms/WinMsvc.cmake has some information on that approach.

https://github.com/llvm/llvm-project/pull/107509


More information about the cfe-commits mailing list