I’ve seen this done with C as well.

https://www.eriksvedang.com/carp

https://github.com/tomhrr/dale

Carp is memory safe via linear types + references, similar to Rust, so I would not describe it as C-like but rather Rust-like.