While not what you envision, I recommend looking at Go if you haven't.
I experience bliss while writing stuff in Go. It is not as fast as C, but it is getting closer with every release. Garbage collection in Go is so fast now that there may as well not be any pause at all.
It's worth a look, in my opinion.
I have look at Go. It impress me the first time, specially the CPS stuff. But now I'm working on Rust (apart of F#, python, Swift). Rust is nice, but too strict, and is very hard to be productive on it.
The lack of generics kills Go for me. I know it's an old rag and they'll never add them, but I just can't get over it. Maybe I should try Rust...
C doesn't have generics, either.
I was recommending Go to someone that wanted C plus a few things. For me, that's Go.
Why does the lack of generics come up all the time?
There's a bit of new syntax, but overall it does what you asked for: https://ooc-lang.org/ even compiled down to C
It didn't get very popular though.
In the other hand, I wish C get allowed to improve much more, and do python2/python3 split (with better handling of the situation, of course), to remove lingering issues, clean the syntax/API, and just add algebraic data types, match and Option<T>, and a good UTF-8 string (the only additions that I think are worthwhile without making C too different).
I envision a C-good that transpile to C-classic and slowly take over.