// RUN: %clang_cc1 -fsyntax-only %s -verify // RUN: %clang_cc1 -fsyntax-only -std=c++98 %s -verify // RUN: %clang_cc1 -fsyntax-only -std=c++11 %s -verify // namespace std { template class pair; } @interface NSObject @end @interface Test : NSObject @end @implementation Test struct EvilStruct { } // expected-error {{expected ';' after struct}} typedef std::pair IntegerPair; template void f(Ts); // expected-error {{unexpanded}} #if __cplusplus <= 199711L // C++03 or earlier modes // expected-warning@-2 {{variadic templates are a C++11 extension}} #endif @end