https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87108
--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> ---
Reduced:
template<unsigned long N> struct array { };
template<typename T> struct A; // incomplete
template<int N>
struct A<array<N>>
{
};
A<array<2>> a;
91271.cc:10:13: error: aggregate ‘A<array<2> > a’ has incomplete type and
cannot be defined
A<array<2>> a;
^
Seems related to core issue 1647
