// PR c++/43382 // { dg-do compile { target c++11 } } template struct Container { T f() const; }; template T deref(const T& t) { return t; } template auto deref(const T& u, int r, Args... args) -> decltype(deref(u.f(), args...)) { return deref(u.f(), args...); } int main(void) { Container> v; deref(v,1,2); }