I used to worry about using dialects of C and C++ that would might not be supported on some platform that I might be using in the future. Then, I realized that or at least the last 15 years I had never used a commercial compiler -- it's been gnu all the way. At that point I learned to stop worrying and love the modern dialects like C11 and C++11 that gnu has always supported years before most proprietary offerings.
Regarding the efficiency of C++ on embedded platforms, I think it's true that going crazy with vtables can get expensive, but I usually restrict myself not to use polymorphism in resource tight projects. Yeah, that's giving up a big feature of OO, but it's not the only feature.
I have really mixed feelings with C++. I think it is an embarrassingly large and complex language, with so many subtle ways to hurt yourself. But it is powerful and expressive. In the end, I use it and would be unhappy sticking to C89 or somesuch.
Furthermore, regarding vendor (and other libraries), everyone uses C interfaces, and that's very understandable for a lot of reasons, but it's also kind of a shame. It would be cool to use some libraries with c++ interfaces. I have worked on projects where some important library was written in C++, delivered as a .a + header files, and my code was c++, too, but of course, calling between the library and my code was "extern c." Somewhat sad, IMHO.