https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66651
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dje at gcc dot gnu.org, | |jakub at gcc dot gnu.org --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I believe that is a user error. When using altivec.h and -maltivec in C++, you should either use the non-iso -std modes like -std=gnu++11 or -std=gnu++98 or -std=gnu++14, or #undef vector #undef bool after including altivec.h, or -D__APPLE_ALTIVEC__. In iso modes without -D__APPLE_ALTIVEC__, vector/bool are not contextual macros, but normal macros, which is of course totally incompatible with all of the STL.