https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106017
--- Comment #2 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Segher Boessenkool from comment #1) > So the restriction in rs6000_invalid_conversion errors for valid C programs. > What was it intended to accomplish? We do not want or allow automatic conversions between the opaque __vector_pair and __vector_quad types and other types and those are correctly disallowed there. Conversions between those types needs to go through the builtins defined for that. As for the pointer conversions tested there, I guess they came along for the ride? Nemanja, do you remember the history there? Or does LLVM allow the pointer conversions and it's just GCC that complains?