#if defined(_MSC_VER) && _MSC_VER == 1800 # error "VS 2013 does not safely support this" #endif // Dummy implementation. Test only the compiler feature. namespace std { typedef decltype(sizeof(int)) size_t; template class initializer_list { const _E* __begin_; size_t __size_; public: template initializer_list(T1, T2) {} }; } template struct A { A(std::initializer_list) {} }; void someFunc() { A as = { 1, 2, 3, 4 }; }