1// PR9073 2template<typename _Tp> 3class shared_ptr{ 4public: 5 template<class _Alloc, class ..._Args> 6 static 7 shared_ptr<_Tp> 8 allocate_shared(const _Alloc& __a, _Args&& ...__args); 9}; 10 11template<class _Tp> 12template<class _Alloc, class ..._Args> 13shared_ptr<_Tp> 14shared_ptr<_Tp>::allocate_shared(const _Alloc& __a, _Args&& ...__args) 15{ 16 shared_ptr<_Tp> __r; 17 return __r; 18} 19 20template<typename...Ts> struct outer { 21 template<Ts...Vs, template<Ts> class ...Cs> struct inner { 22 inner(Cs<Vs>...); 23 }; 24}; 25template struct outer<int, int>; 26