[PATCH] D131465: C++/ObjC++: switch to gnu++17 as the default standard

Aaron Ballman via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Sep 23 12:04:38 PDT 2022


aaron.ballman added a comment.

In D131465#3810070 <https://reviews.llvm.org/D131465#3810070>, @hans wrote:

>> If we're all using `clang` for the command, we'd all get the same behavior, right? There's no expectation that `clang` and `cl` behave the same way, that's what `clang-cl` is for. I guess I don't see why we care about how MSVC behaves unless passing `-fms-compatibility` or using `clang-cl` as the driver and so I don't see why MSVC should dictate our behavior. (e.g., using clang and libc++ on Windows because the programmer doesn't want to use MSVC at all [except for the C runtime, I suppose] is something I believe we want to support, and with such a use case, defaulting to what MSVC defaults to seems surprising to me without other motivation.)
>
> Okay, should we key this off the driver mode then (clang-cl vs clang), or on the `-fms-compatibility` version?

Does `clang-cl` set the `-fms-compatibility` version? If so, then it seems like we'd probably want to key it off `-fms-compatibility`?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D131465/new/

https://reviews.llvm.org/D131465



More information about the cfe-commits mailing list