One of these days I want to do a "typesafe macro assembler" that actually is the language people think that C is.
I'm actually working on something similar to this. Basically works as an additional preprocessed layer over C++. You can get some crazy results, but it's tricky to integrate with existing build tools without causing havoc.
You could call it rust and just rename the remaining UB as "unsafe" and call the problem solved
It already exists, MASM and TASM, and related derivatives, with high level control flow pseudo instructions and less UB.
You could even give it identical syntax to C!