[clang] [llvm] [Clang] Match MSVC handling of duplicate header search paths in Microsoft compatibility modes. (PR #105738)

Tom Honermann via cfe-commits cfe-commits at lists.llvm.org
Fri Oct 18 21:21:55 PDT 2024


tahonermann wrote:

> This choice seems like a question of how the driver's command line is interpreted, rather than a language mode, so I wonder if it makes sense for it to consider `-fms-compatibility` at all or whether this should just be based on the driver mode. Do you have rationale for this also changing under `-fms-compatibility`?

@zygoloid, that is a fair question. My original intent had been to make the behavior contingent on driver mode. I switched to tying it to `-fms-compatibility` because other preprocessor behavior is contingent on that option and because that would be a less invasive change. Duplicate search path pruning is currently done by cc1 and I don't think that should be moved to the driver. I could be mistaken, but I don't think driver mode is exposed to cc1 (and that is probably a good thing). We could introduce a new cc1 option to opt-in to Microsoft style search path pruning. I'm not opposed to that.

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


More information about the cfe-commits mailing list