// PR c++/95319 // { dg-do compile { target c++11 } } typedef decltype(sizeof(char)) size_t; namespace std { template class initializer_list { int *_M_array; size_t _M_len; }; template struct A { typedef int _Type[_Nm]; }; template struct B { typename A<_Nm>::_Type _M_elems; }; class C { public: void insert(int, B<3>); void insert(int, initializer_list>); }; } // namespace std int a; int main() { using ArrayVector = std::C; auto b = ArrayVector(); b.insert(a, {{2}}); return 0; }