1 // RUN: %clang_cc1 -std=c++11 -fsyntax-only -verify %s 2 // expected-no-diagnostics 3 4 // If the original function parameter associated with A is a function 5 // parameter pack and the function parameter associated with P is not 6 // a function parameter pack, then template argument deduction fails. 7 template<class ... Args> int& f(Args ... args); 8 template<class T1, class ... Args> float& f(T1 a1, Args ... args); 9 template<class T1, class T2> double& f(T1 a1, T2 a2); 10 11 void test_f() { 12 int &ir1 = f(); 13 float &fr1 = f(1, 2, 3); 14 double &dr1 = f(1, 2); 15 } 16