[PATCH] D103773: [clang-cl] Add /permissive and /permissive-

Nico Weber via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sun Jun 6 12:43:34 PDT 2021


thakis added a comment.

I think adding `/permissive-` to make things more conforming is great. The docs say "Starting in Visual Studio 2019 version 16.8, the /std:c++latest option implicitly sets the /permissive- option." so maybe we should do that too (doesn't have to be in this patch).

Since things seem to mostly work without `/permissive` (without the `-`) I'm not sure if we should add support for that. It'll make clang-cl less conforming, and in practice things seem to be fine as-is (…right?). Part of the reason why `/permissive-` doesn't expand to more flags in clang-cl (https://docs.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-160 lists a whole bunch more) I imagine is because clang-cl already has the stricter defaults there – which it can do because it's a newer compiler that needs to support less old code.

Details:

- docs say "You can pass specific /Zc options after /permissive- on the command line to override this behavior" – does that work with this approach? We should have a test for that


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D103773



More information about the cfe-commits mailing list