[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / PCH / cxx-variadic-templates.h
blob45395e9ae84aa963a66b8de23b4d6cea378edd82
1 // PR9073
2 template<typename _Tp>
3 class shared_ptr{
4 public:
5 template<class _Alloc, class ..._Args>
6 static
7 shared_ptr<_Tp>
8 allocate_shared(const _Alloc& __a, _Args&& ...__args);
9 };
11 template<class _Tp>
12 template<class _Alloc, class ..._Args>
13 shared_ptr<_Tp>
14 shared_ptr<_Tp>::allocate_shared(const _Alloc& __a, _Args&& ...__args)
16 shared_ptr<_Tp> __r;
17 return __r;
20 template<typename...Ts> struct outer {
21 template<Ts...Vs, template<Ts> class ...Cs> struct inner {
22 inner(Cs<Vs>...);
25 template struct outer<int, int>;
27 template<typename ...T> void take_nondependent_pack(int (...arr)[sizeof(sizeof(T))]);
29 template<typename T> using hide = int;
30 template<typename ...T> void take_nondependent_pack_2(outer<hide<T>...>);