// RUN: %clang_cc1 -std=c++11 -verify=cxx11 -emit-llvm-only %s // RUN: %clang_cc1 -std=c++98 -fsyntax-only -verify=cxx98 %s // RUN: %clang_cc1 -std=c++11 -verify=cxx11 -emit-llvm-only %s -fexperimental-new-constant-interpreter // RUN: %clang_cc1 -std=c++98 -fsyntax-only -verify=cxx98 %s -fexperimental-new-constant-interpreter namespace std { template class initializer_list {}; // cxx11-error@-1 {{'std::initializer_list' layout not recognized. Must be a non-polymorphic class type with no bases and two fields: a 'const E *' and either another 'const E *' or a 'std::size_t'}} } template int f(std::initializer_list il); int F = f({1, 2, 3}); // cxx98-error@-1 {{expected expression}}