https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117683
--- Comment #9 from R. Diez <rdiez-2006 at rd10 dot de> --- Interesting. I think that vague warning in the documentation could be interpreted as "mixing is risky and/or discouraged" and should be rephrased. After all, at least some level of mixing is apparently safe. I am now curious about why GCC itself builds without RTTI. Is it really worth disabling it? Or is it only a policy decision like "the GCC source shall not use RTTI"? Does GCC itself disable C++ exceptions too? If you must build at least libsupc++ with RTTI (at least for arm-none-eabi), and that usually means building the whole libstdc++ with RTTI, I gather there is no way to avoid some amount of RTTI data in the final binary then, even if unused (due to the lack of other optimisations, like removing unused virtual functions).