https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105485
--- Comment #3 from Kewen Lin <linkw at gcc dot gnu.org> --- This issue can happen for any bif which supports overloading. for example, same ICE for: typedef __attribute__ ((altivec (vector__))) signed int T; template <class> void __builtin_vec_splats (); T b (T i) { return __builtin_vec_splats (i); }