> named structure assignment
Is a thing since C++20
> sane treatment of the void type
If you're talking about conversion rules, explicit cast from void* to T* makes more sense than implicit since it is a downcast.
> VLAs
IMO these are a mistake (and C++ templates remove a lot of the need for it). They give a false sense of security and invite stack boundary overrun as many people forget to check bounds on these. I found and reported an unauthenticated RCE DoS (crash) in a distributed DB due to VLAs; worse, one cannot always assume the minimum stack size on a system.
> a local error handling convention
Exceptions are problematic in their implementation and how they are (mis)used, but they are supposed to be orthogonal to normal control flow handling, and are not supposed to replace it. They are more-or-less recoverable panics