http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53161
Roman Kononov <roman at binarylife dot net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |roman at binarylife dot net --- Comment #8 from Roman Kononov <roman at binarylife dot net> 2012-05-21 21:00:42 UTC --- Another test case (without vectors): $ cat test.cpp void gg(); static __typeof(gg) __gthrw_gg __attribute__((__weakref__("gg"))); template<typename R,typename... A> struct data { template<typename Y,typename X> data(Y& y,R(X::*f)(A...)); }; template<typename Y,typename X,typename R,typename... A> data<R,A...> make_data(Y& y,R(X::*f)(A...)) { return data<R,A...>(y,f); } void global(data<void>); struct test { void bar() {} void doit() { global(make_data(*this,&test::bar)); } }; $ g++ -std=c++11 -c test.cpp test.cpp:20:2: internal compiler error: vector VEC(ipa_ref_ptr,base) index domain error, in ipa_remove_reference at ipa-ref.c:84 }; ^ Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions.