http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58241
Francisco Jerez <currojerez at riseup dot net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |currojerez at riseup dot net --- Comment #5 from Francisco Jerez <currojerez at riseup dot net> --- (In reply to Andrew Pinski from comment #3) > You need to use -std=g++11 or undefine bool after the include of altivec.h > as context sensitive keywords is not part of the C++11 standard. > Isn't the bool keyword part of the C++ standard? I fail to see how this bug is invalid, the inclusion of a system header is redefining the meaning of a language keyword in a way that breaks standard C++ code, and the definition of "vector" collides with the C++ standard library. Forcing the user to undef those in order to get their expected behaviour according to the C++ standard seems like a questionable and dangerous practice to me... If OTOH this file was never supposed to be included from non-GNU C++ code, the include line should probably be removed from Khronos' cl_platform.h. Thank you.