Unito oggi a LLVM 17 Git ora riconosce-std=c++23 anziché solo-std=c++2b per il compilatore Clang ora che C++23 è stato ritenuto tecnicamente completo.
Dopo che il comitato ISO C++ ha votato che lo standard C++23 ha raggiunto il suo stato tecnico completo, gli sviluppatori LLVM sono andati avanti e hanno rinominato il loro obiettivo standard C++2b in C++23. Questo è simile al passato in cui C++20 era noto come C++2a fino a quando l’aggiornamento del linguaggio non era pronto e con i precedenti standard ISO C++.
L’utilizzo di-std=c++23 anziché-std=c++2b è stato effettuato tramite questo commit.
Lo standard C++23 introduce nuove funzionalità come una libreria stacktrace basata su stracktrace di Boost, intervalli presi in prestito condizionalmente, l’intestazione stdatomic.h per l’interoperabilità con C atomics, std::byteswap, std::expected, il supporto per i file sorgente UTF-8 è ora considerato obbligatorio, se consteval, attributi su lambda e numerose altre modifiche. Un’occhiata utile e l’attuale supporto del compilatore possono essere trovati tramite cppreference.com.
Andando avanti, oggi è stato emesso anche un richiesta di commenti che LLVM vada avanti e chiami immediatamente il suo supporto C++26″C++26″senza prima chiamarlo C+ +2c. La speranza è che porti a meno errori durante i periodi di transizione se-std=c++26 viene aggiunto subito.