Re: "help make C++ code safer and more reliable"
Bindings are a known issue. Many resources around to rea.
Integration is an important aspect of software engineering. Also many resources around to read.
I mean you could quickly link to one to make your point?
People need to write software for operating systems not just bare metal.
Yes, both of these are possible in Rust.
Plus Rust in embedded is so far behind that this is a laughable suggestion.
Hmmm, embedded stuff in any language isn't great. Lets not pretend C is the poster child for embedded here. Old compilers, old toolchains, etc etc. Plus Rust is a lot younger than C, and is improving rapidly.
With Rust, if you want to target OpenGL, X11, Wayland, Win32, Postgres, etc... you are going to be either maintaining fragile and dangerous bindings against the C API yourself or using some other guys fragile / dangerous bindings.
Again, I'd ask for examples. I have two hobby projects on the go in Rust at the moment. One is a Windows app. Which I can target windows and linux on, and with less effort than if I'd used my old favourite cross platform UI library Qt. The other is an operating system. I started writing an OS in C, got to a small multi CPU/multi threaded kernel, then decided to re-write it in Rust (as I'd written a 32 bit kernel and wanted to go 64 bit). Whilst the Rust side of it is still quite new, I've had a much better experience using Rust and it's modern build infrastructure than I had in C. (Christ, not having to customise GCC is a bonus in itself).
Apologies my response is terse, these issues with Rust are not new and have been around for decades since the industry standardized on C, so its a little boring to discuss in 2026.
Terseness I don't object to, but I think you might not have the understanding you think you do. Firstly Rust is just over a decade old, so at least give it the chance to catch up with C.
Secondly, in what way has the industry standardised on C? A lot of Windows is written in C++ or a CLR based language (C# usuall), Linux is largely C, but the industry is much much bigger than these two. Hell the last bit of embedded code I wrote was in pascal of all things.
Thirdly, and this is the important bit... the inter language bindings are ABI bindings. That is you have to write to the calling convention of the system you're programming for. This dictates what order arguments go on the stack, how return variables are passed, etc etc. Now, it is true that most of these are born out of the initial C compilers and linkers, but they're not 'standard' outside their environments. The calling convention on an ARM is different to x86, and even on x86 there isn't one standard. See here for more info.
These are the bindings you maintain, you can have the same problems in C if you use differing compilers (GCC and MSVC spring to mind on Windows, although these issues have largely been ironed out), but even in C++ (a close relation to C), you can often end up with judicious __cdecl usage if you're linking externally.
Also... this article is about C++, which isn't C... and has all the same issues... (or is the 'guy' maintaining the C++ bindings somehow more skilled??)