C compiler support
From cppreference.com
< c
|
|
This page is maintained as best-effort and may lag behind most recent compiler releases. If you see something is out-of-date, please help us by updating it! |
Contents |
[edit] C23 features
Note that this list may change, as the draft C23/2x standard evolves.
[edit] C23 core language features
| This section is incomplete Reason: status for Apple Clang and other compilers supporting C2x |
| C23 feature |
Paper(s) |
GCC |
Clang |
MSVC |
Apple Clang |
EDG eccp |
Intel C++ |
Nvidia HPC C++ (ex PGI)* |
Nvidia nvcc |
Cray |
|
|---|---|---|---|---|---|---|---|---|---|---|---|
| static_assert with no message | N2265 | 9 | 9 | Yes | Yes | 6.5 | 2021.1.2 (clang based) | ||||
[[nodiscard]]
|
N2267 | 10 | 9 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
[[maybe_unused]]
|
N2270 | 10 | 9 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
[[deprecated]]
|
N2334 | 10 | 9 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
| Attributes | N2335 N2554 |
10 | 9 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
| IEEE 754 decimal floating-point types | N2341 | 4.2 (partial)* 12 |
13.0 (partial)* | ||||||||
[[fallthrough]]
|
N2408 | 10 | 9 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
u8 character constants
|
N2418 | 10 | 15 | 6.5 | 2022.2 | ||||||
| Removal of function definitions without prototype | N2432 | 10 | 15 | 2022.2 | |||||||
[[nodiscard]] with message
|
N2448 | 11 | 10 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
| Unnamed parameters in function definitions | N2480 | 11 | 11 | Yes | 6.4 | 2021.1.2 (clang based) | |||||
| Labels before declarations and end of blocks | N2508 | 11 | 16 | Partial* | 6.5 | 17.0* | |||||
| Binary integer constants |