#if defined(_MSC_VER) && _MSC_VER == 1800 && _MSC_FULL_VER < 180030723 #error "VS 2013 safely supports this only with Update 3 or greater" #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 }; }