Mon avis sur C23:
* New functions of libc in string.h, stdbit.h, time.h: sympathique mais pas mandatory et peut être récupéré depuis une lib tiers qui aura le mérite de fonctionner partout.
* New functions of libc in math.h: useless en l'état. Il vaut mieux utiliser des lib tiers qui au moins garantissent la précision du résultat.
* binary support: sympathique mais pas mandatory
* Make the functions const aware: good!
* #elifdef and #elifndef: useless
* #embed: good feature simplifiant le process de build.
* #warning: sympathique mais pas mandatory
* __has_include: good feature
* __VA_OPT__: sympathique mais pas mandatory (j'ai déjà appris à coder les macros pour m'en passer

)
* nullptr: useless. Ils auraient mieux fait de corriger la définition de NULL qui aurait été plus safe
* _BitInt(N): je me méfie vraiment de voir ce que ca va donner coté compilateur.
* ckd_add(), ckd_sub(), ckd_mul(): sympathique mais existent déjà en lib tiers
* Variably-modified types: déjà supportait par tous les compilateurs sauf celui de MS
* Better support for using const with arrays: enfin des cast à la con en moins!
* typeof: killer feature... mais existait déjà sous forme d'extension dans tous les compilateurs...
* auto: encore pas d'avis dessus. Je n'ai encore jamais eu le réel besoin de m'en servir.
* allow redeclaration of a compatible type with the same tag: good mais anecdotique.
* Exact-width integer may now exceed intmax_t: Connerie! Autant supprimer le type intmax_t!
* Add ' digit separator to literal constants: sympathique
* Add the ability to specify the underlying type of an enum: sympathique
* Add new keywords: violiation du contrat des anciens standards sur le namespace réservé au standard (du code existant aura du mal à être compilé en C23). Bref avec C23, y'a plus de namespace réservé et on fait ce qu'on veut.
* _Decimal32 arithmetic: pas vu l'intérêt. Au début je pensais que c'était pour la finance, mais je me suis fait retoquer en me disant que ce n'était pas les calculs avec n'étaient pas bon pour. Donc je ne vois pas l'intérêt
* Labels can appear before declarations: sympatoche
* Unnamed parameters in function definitions: sympatoche
* Zero initialization with {}: pas vu la différence pratique avec {0}
* Relax requirements for variadic parameter lists: useless simplification
* C++11 attributes: putain que c'est moche!
* single-argument _Static_assert: sympatoche
* removal of K&R function declarations: good
* C++ compatibility: bof... tant que les compound literal ne sont pas supportés par le C++ on va devoir se taper des #if __cplusplus__ comme d'habitude
* u8 prefix: good
* constexpr: useless en l'état. On pouvait tout déjà faire avec un enum
* char8_t / mbrtoc8 / c8rtomb: une bad joke en l'état! A fuir.
* Allow storage class specifiers to appear in compound literal definition: sympatoche
En résumé, sympatoche, mais manquant de killer feature forcant son usage. Et ils n'ont pas corrigé la m***e que sont les locales en C.
Mon avis sur le C++23:
* trop, trop, trop de features.