You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -22,10 +22,12 @@ Here are the **`/Zc`** compiler options:
22
22
23
23
| Option | Behavior |
24
24
|--|--|
25
+
|[`/Zc:__cplusplus`](zc-cplusplus.md)| Enable the `__cplusplus` macro to report the supported standard (off by default). |
26
+
|[`/Zc:__STDC__`](zc-stdc.md)| Enable the `__STDC__` macro to report the C standard is supported (off by default). |
25
27
|[`/Zc:alignedNew`](zc-alignednew.md)| Enable C++17 over-aligned dynamic allocation (on by default in C++17). |
26
28
|[`/Zc:auto`](zc-auto-deduce-variable-type.md)| Enforce the new Standard C++ meaning for **`auto`** (on by default). |
27
29
|[`/Zc:char8_t`](zc-char8-t.md)| Enable or disable C++20 native `u8` literal support as `const char8_t` (off by default, except under **`/std:c++20`**). |
28
-
|[`/Zc:__cplusplus`](zc-cplusplus.md)| Enable the `__cplusplus` macro to report the supported standard (off by default). |
30
+
|[`/Zc:enumTypes[-]`](zc-enumtypes.md)| Enable Standard C++ rules for `enum` type deduction (off by default). |
29
31
|[`/Zc:externC`](zc-externc.md)| Enforce Standard C++ rules for `extern "C"` functions (implied by **`/permissive-`**). |
30
32
|[`/Zc:externConstexpr`](zc-externconstexpr.md)| Enable external linkage for **`constexpr`** variables (off by default). |
31
33
|[`/Zc:forScope`](zc-forscope-force-conformance-in-for-loop-scope.md)| Enforce Standard C++ **`for`** scoping rules (on by default). |
@@ -43,9 +45,11 @@ Here are the **`/Zc`** compiler options:
43
45
|[`/Zc:ternary`](zc-ternary.md)| Enforce conditional operator rules on operand types (off by default). |
44
46
|[`/Zc:threadSafeInit`](zc-threadsafeinit-thread-safe-local-static-initialization.md)| Enable thread-safe local static initialization (on by default). |
45
47
|[`/Zc:throwingNew`](zc-throwingnew-assume-operator-new-throws.md)| Assume **`operator new`** throws on failure (off by default). |
48
+
|[`/Zc:tlsGuards[-]`](zc-tlsguards.md)| Generate runtime checks for TLS variable initialization (on by default). |
46
49
|[`/Zc:trigraphs`](zc-trigraphs-trigraphs-substitution.md)| Enable trigraphs (obsolete, off by default). |
47
50
|[`/Zc:twoPhase`](zc-twophase.md)| Use non-conforming template parsing behavior (conforming by default). |
48
51
|[`/Zc:wchar_t`](zc-wchar-t-wchar-t-is-native-type.md)|**`wchar_t`** is a native type, not a typedef (on by default). |
52
+
|[`/Zc:zeroSizeArrayNew[-]`](zc-zerosizearraynew.md)| Call member `new`/`delete` for 0-size arrays of objects (on by default). |
49
53
50
54
For more information about conformance issues in MSVC, see [Nonstandard behavior](../../cpp/nonstandard-behavior.md).
0 commit comments