// { dg-options "-std=gnu++0x" } template char& f(Args... args); // #1 template short& f(T1 a1, Args... args); // #2 template int& f(T1 a2, T2 a3); // #3 void g() { char& x = f(); // calls #1 short& y = f(1, 2, 3); // calls #2 int& z = f(1, 2); // calls #3 }