1*30622bb6SFaisal Vali // RUN: %clang_cc1 -std=c++11 -verify -emit-llvm-only %s
2*30622bb6SFaisal Vali // RUN: %clang_cc1 -std=c++98 -fsyntax-only -verify %s -DCPP98
3*30622bb6SFaisal Vali 
4*30622bb6SFaisal Vali namespace std {
5*30622bb6SFaisal Vali   template <class _E>
6*30622bb6SFaisal Vali   class initializer_list
7*30622bb6SFaisal Vali   {};
8*30622bb6SFaisal Vali }
9*30622bb6SFaisal Vali 
10*30622bb6SFaisal Vali template<class E> int f(std::initializer_list<E> il);
11*30622bb6SFaisal Vali 
12*30622bb6SFaisal Vali 
13*30622bb6SFaisal Vali int F = f({1, 2, 3});
14*30622bb6SFaisal Vali #ifdef CPP98
15*30622bb6SFaisal Vali //expected-error@-2{{expected expression}}
16*30622bb6SFaisal Vali #else
17*30622bb6SFaisal Vali //expected-error@-4{{cannot compile}}
18*30622bb6SFaisal Vali #endif
19*30622bb6SFaisal Vali 
20*30622bb6SFaisal Vali 
21