diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/cpp0x/vt-60130.C')
-rw-r--r-- | gcc/testsuite/g++.dg/cpp0x/vt-60130.C | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/cpp0x/vt-60130.C b/gcc/testsuite/g++.dg/cpp0x/vt-60130.C new file mode 100644 index 00000000000..50662dbe07e --- /dev/null +++ b/gcc/testsuite/g++.dg/cpp0x/vt-60130.C @@ -0,0 +1,21 @@ +// PR c++/60130 +// { dg-do compile { target c++11 } } + +#include <tuple> + +template <class S, class F, class... T> +S f1(F f, T... x) +{ + return std::get<0>(std::make_tuple(f(x)...)); +} + +template <class... T> +int f2(const T... x) +{ + return std::get<0>(std::make_tuple(f1<T>([](int n){return n;}, x)...)); +} + +int main() +{ + return f2(42); +} |