Technically you're right, but I don't think that changes what I said about optimization. There are still cases where equivalent C++ code can be faster than the C version merely due to different optimizations used.
Meh, I'm unconvinced. If it's any kind of hot spot, in either, you can optimize the hell out of it. C++ is often more bloated is it's just a harder language pretending to be an easier one.
That's fine, you don't have to agree. Personally I do like to use just a few features of C++ without going too crazy, like simple classes and maybe one level of inheritance, but I don't really get into templates or exceptions or other really complex/controversial stuff. I prefer having the stronger typing and better readability of this kind of C++, and I think it helps me make less mistakes, but I realize not everyone agrees, and that's ok.
I think that's the thing, C++ is so broad. It's like many languages together. It's complex with lots of implicitness yet unsafe. There is loads of support in compilers and tools to mitigate that, but that's treatment not cure.
I think the same could be said about C now too, it is continuing to evolve itself with newer standards too just like C++. People choose to only use C features that they want, same goes for C++.
And that is true of any language, but C++ is without doubt one of the broadest. There are very different ways of working with it that compile very differently.
Yes. Too much for people to learn, so they make mistakes. I've seen compilers get confused with C++. Though it was MS's....
If a language isn't tight, it should at least be safe. C++ is neither. You can do anything with it, but I don't think it's ever really a good tool for a particular job.