The only sin of C++ is the same that plagues evolutionary languages like Typescript, Kotlin and so forth.
No matter how many tools they provide to write better code than the language they have grown from, their compatibility with them is like hearding cats while trying to have everyone adopt best practices.
Otherwise in regards to Arduino, I would suggest a couple of nice BASIC and Pascal compilers like those sold by Mikroe.
shhh. Let's not disturb those that believe in the GC fairy that sprinkles their code with safety magic late at night while they soundly sleep. Firmware doesn't exist. I can't hear you. Na na na na na na na
https://www.withsecure.com/us-en/solutions/innovative-securi...
A good indication of embedded is having to manage shared global state.
This is very unlike a browser where you can hide all that behind OS calls.
And costs the same as an ARM with dozens of megabytes of each.