Given that the reference Rust implementation currently outputs LLVM IR, and LLVM IR is well-suited as a thing to translate compiler output to, I sort of think that you could solve that by just having new compilers use LLVM as the backend, directly. The way to make Rust support a new platform is to make LLVM support it, after all.
(But you're right, "replacement for all of C's use cases" was strictly incorrect. I'd argue that this is a bad use of C, unlike e.g. kernels or bootloaders, but that's a matter of opinion.)
(But you're right, "replacement for all of C's use cases" was strictly incorrect. I'd argue that this is a bad use of C, unlike e.g. kernels or bootloaders, but that's a matter of opinion.)