https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83778
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Minimal reproducer: int f4 (__attribute__((altivec(vector__))) int a) { return __builtin_vec_extract (a, 4); } ./cc1plus -quiet -std=gnu++14 -maltivec pr83778.C -isystem include/ -mcpu=power8 The difference is that before r256448 rs6000_resolve_overloaded_builtin was called with INTEGER_CST in the arg2, but now with NON_LVALUE_EXPR wrapper around it.