Heute mit LLVM 17 zusammengeführt, erkennt Git jetzt-std=c++23 statt nur-std=c++2b für den Clang-Compiler, nachdem C++23 als technisch vollständig angesehen wurde.
Nachdem das ISO-C++-Komitee entschieden hat, dass der C++23-Standard seinen technischen Vollendungszustand erreicht hat, haben LLVM-Entwickler weitergemacht und ihr C++2b-Standardziel in C++23 umbenannt. Dies ist ähnlich wie in der Vergangenheit, wo C++20 als C++2a bekannt war, bis das Sprachupdate fertig war und mit früheren ISO-C++-Standards.
Die Verwendung von-std=c++23 anstelle von-std=c++2b erfolgte über dieses Commit.
Der C++23-Standard führt neue Funktionen ein, wie eine Stacktrace-Bibliothek basierend auf Boosts Stracktrace, bedingt ausgeliehene Bereiche, den stdatomic.h-Header für die Interoperabilität mit C-Atomics, std::byteswap, std::expected, die Unterstützung von UTF-8-Quelldateien wird jetzt als obligatorisch angesehen, wenn Consteval, Attribute auf Lambdas und zahlreiche andere Änderungen. Eine praktische Ansicht und die aktuelle Compiler-Unterstützung finden Sie unter cppreference.com.
Auch heute wurde ein bitte um Kommentare, dass LLVM seine C++26-Unterstützung sofort”C++26″nennt, ohne sie zuerst C+ zu nennen +2c. Die Hoffnung ist, dass es in den Übergangszeiten zu weniger Fehlern führt, wenn gleich-std=c++26 hinzugefügt wird.