1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify %s 2*f4a2713aSLionel Sambuc // expected-no-diagnostics 3*f4a2713aSLionel Sambuc class A 4*f4a2713aSLionel Sambuc { 5*f4a2713aSLionel Sambuc public: A()6*f4a2713aSLionel Sambuc A() {} 7*f4a2713aSLionel Sambuc 8*f4a2713aSLionel Sambuc template <class _F> 9*f4a2713aSLionel Sambuc explicit A(_F&& __f); 10*f4a2713aSLionel Sambuc A(A &&)11*f4a2713aSLionel Sambuc A(A&&) {} operator =(A &&)12*f4a2713aSLionel Sambuc A& operator=(A&&) {return *this;} 13*f4a2713aSLionel Sambuc }; 14*f4a2713aSLionel Sambuc 15*f4a2713aSLionel Sambuc template <class T> f(T t)16*f4a2713aSLionel Sambucvoid f(T t) 17*f4a2713aSLionel Sambuc { 18*f4a2713aSLionel Sambuc A a; 19*f4a2713aSLionel Sambuc a = f(t); 20*f4a2713aSLionel Sambuc } 21