https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89187
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> --- With a small adjustment and -std=c++0x -fno-tree-ccp -fno-tree-sra -Os -fno-inline template <typename a, int b> struct c { typedef a __attribute__((vector_size(b))) d; }; template <typename a, int b> using e = typename c<a, b>::d; template <typename a> using f = e<a, 4>; struct g { g(f<int> h) : i{h[3]} {} g j() { return i; } f<int> i; }; extern g gg; struct { g k() { return gg; } } l; class m { void n() const; }; void m::n() const { l.k().j(); } it was accepted by r205706 and before (back to when it wasn't accepted because missing C++11 support) and r207203 already ICEs on it, don't have around anything in between.