C++ 23 Features
Following is the status and version of compiler support for C++ 2b Features.
| Language Feature | Standard # | ICX 2022.2 (oneAPI 2022.3) | ICX 2023.2 (oneAPI 2023.2) | ICX 2024.0 (oneAPI 2024.0) |
ICX 2024.1 (oneAPI 2024.1) |
ICX 2024.2 (oneAPI 2024.2) |
|---|---|---|---|---|---|---|
| Literal suffix uz, z for size_t, ssize_t | P0330R8 | Yes | Yes | Yes | Yes | Yes |
| Make () in lambdas optional in all cases | P1102R2 | Yes | Yes | Yes | Yes | Yes |
| Simpler implicit move | P2266R1 | Yes | Yes | Yes | Yes | Yes |
| if consteval | P2156R1 | Yes | Yes | Yes | Yes | Yes |
| Allow duplicate attributes | P1401R5 | Yes | Yes | Yes | Yes | Yes |
| Narrowing contextual conversions to bool | P2223R2 | Yes | Yes | Yes | Yes | Yes |
| Trimming whitespaces before line splicing | P2223R2 | Yes | Yes | Yes | Yes | Yes |
| Make declaration order layout mandated | P1874R4 | Yes | Yes | Yes | Yes | Yes |
| C++ identifier syntax using UAX 31 | P1949R7 | Yes | Yes | Yes | Yes | Yes |
| Mixed string literal concatenation | P2201R1 | Yes | Yes | Yes | Yes | Yes |
| Deducing this | P0847R7 | No | No | No | No | No |
| Change scope of lambda trailing-return-type | P2036R3 | No | Yes | Yes | Yes | Yes |
| Migration strategies for Change scope of lambda trailing-return-type | P2579R0 | No | Yes | Yes | Yes | Yes |
| Multidimensional subscript operator | P2128R6 | Yes | Yes | Yes | Yes | Yes |
| Non-literal variables (and labels and gotos) in constexpr functions | P2242R3 | Yes | Yes | Yes | Yes | Yes |
| Character encoding of diagnostic text | P2246R1 | Yes | Yes | Yes | Yes | Yes |
| Character sets and encodings | P2314R4 | Yes | Yes | Yes | Yes | Yes |
| Consistent character literal encoding | P2316R2 | Yes | Yes | Yes | Yes | Yes |
| Add support for preprocessing directives elifdef and elifndef | P2334R1 | Yes | Yes | Yes | Yes | Yes |
| Extend init-statement to allow alias-declaration | P2360R0 | Yes | Yes | Yes | Yes | Yes |
| auto(x): decay-copy in the language | P0849R8 | Yes | Yes | Yes | Yes | Yes |
| Attributes on Lambda-Expressions | P2173R1 | Yes | Yes | Yes | Yes | Yes |
| constexpr for <cmath> and <cstdlib> | P0533R9 | No | No | No | Yes | Yes |
| Type trait to determine if a reference binds to a temporary | P2255R2 | Partial | Partial | Partial | Yes | Yes |
| The Equality Operator You Are Looking For | P2468R2 | No | Yes | Yes | Yes | Yes |
| De-deprecating volatile compound operations | P2468R2 | No | Yes | Yes | Yes | Yes |
| Support for #warning | P2437R1 | No | Yes | Yes | Yes | Yes |
| Remove non-encodable wide character literals and multicharacter wide character literals | P2362R3 | No | Yes | Yes | Yes | Yes |
| Labels at the end of compound statements | P2324R2 | No | Yes | Yes | Yes | Yes |
| Delimited escape sequences | P2290R3 | No | Yes | Yes | Yes | Yes |
| Named universal character escapes | P2071R2 | No | Yes | Yes | Yes | Yes |
| Relaxing some constexpr restrictions | P2448R2 | No | No | Partial | Partial | Partial |
| Using unknown pointers and references in constant expressions | P2280R4 | No | No | No | No | No |
| static operator() | P1169R4 | No | Yes | Yes | Yes | Yes |
| Extended floating-point types and standard names | P1467R9 | No | No | No | No | No |
| Class template argument deduction from inherited constructors | P2582R1 | No | No | No | No | No |
| Portable assumptions | P1774R8 | No | No | No | No | No |
| Support for UTF-8 as a portable source file encoding | P2295R6 | No | Yes | Yes | Yes | Yes |
| char8_t Compatibility and Portability Fix | P2513R3 | No | Yes | Yes | Yes | Yes |
| Relax requirements on wchar_t to match existing practices | P2460R2 | No | Yes | Yes | Yes | Yes |
| Explicit lifetime management | P2590R2 | No | No | No | No | No |
| static operator[] | P2589R1 | No | Yes | Yes | Yes | Yes |
| Permitting static constexpr variables in constexpr functions (DR) | P2647R1 | No | Yes | Yes | Yes | Yes |
| consteval needs to propagate up (DR) | P2564R3 | No | No | Yes | Yes | Yes |
| Referencing The Unicode Standard | P2736R2 | Yes | Yes | Yes | Yes | Yes |
Other relevant articles: