// RUN: %clang_cc1 -fsyntax-only -std=c++98 -Wc++11-compat-pedantic -verify %s
// RUN: %clang_cc1 -fsyntax-only -std=c++17 -Wc++11-compat-pedantic -verify %s
using namespace N;
; // expected-warning {{explicit instantiation of 'N::f' must occur in namespace 'N'}}
void // expected-note 2{{here}}
; // expected-warning {{explicit instantiation cannot be 'inline'}}
void
int n;
s = , // expected-warning {{non-constant-expression cannot be narrowed from type 'int' to 'char' in initializer list in C++11}} expected-note {{explicit cast}}
t = ; // expected-warning {{constant expression evaluates to 1234 which cannot be narrowed to type 'char' in C++11}} expected-warning {{changes value}} expected-note {{explicit cast}}
int ;
typedef size_t;
void
char c = 'x'_x; // expected-warning {{will be treated as a user-defined literal suffix}}
int
decltype x = 0; // expected-warning {{'decltype(auto)' type specifier is incompatible}}
auto init_capture = ; // expected-warning {{initialized lambda captures are incompatible with C++ standards before C++14}}
auto generic_lambda =
;
auto ; // expected-warning {{incompatible with C++ standards before C++14}}
auto *; // expected-warning {{incompatible with C++ standards before C++14}}
decltype ; // expected-warning {{return type deduction}} expected-warning {{'decltype(auto)' type specifier is incompatible}}
int ;
auto = f;
auto deduced_lambda_return_type = ->
auto // expected-warning {{return type deduction is incompatible}}
;
auto int;
auto auto; // expected-warning {{incompatible with C++ standards before C++14}}
;