1 // { dg-do compile { target c++11 } }
2 
g(T t1,T t2)3 template <class T> T g(T t1, T t2) { return t2; }
4 // { dg-final { scan-assembler "_Z2f1IiEDTcl1gfp_ilEEET_" } }
5 template <class T> auto f1 (T t) -> decltype(g(t,{})) { return g(t,{}); }
6 // { dg-final { scan-assembler "_Z2f2IiEDTcl1gfp_tlT_EEES0_" } }
7 template <class T> auto f2 (T t) -> decltype(g(t,T{})) { return g(t,T{}); }
8 
main()9 int main()
10 {
11   f1(0);
12   f2(0);
13 }
14