p5.cpp revision bebbe0d9b7568ce43a464286bee49429489ef483
1// RUN: %clang_cc1 -std=c++0x -fsyntax-only -verify %s
2
3
4// An appearance of a name of a parameter pack that is not expanded is
5// ill-formed.
6template<typename ... Types>
7struct TestPPName
8  : public Types  // expected-error{{base type contains unexpanded parameter pack}}
9{
10  typedef Types *types_pointer; // expected-error{{declaration type contains unexpanded parameter pack}}
11};
12
13template<typename ... Types>
14void TestPPNameFunc(int i) {
15  f(static_cast<Types>(i)); // expected-error{{expression contains unexpanded parameter pack}}
16}
17