testcase.cc:7:12: error: no viable conversion from 'tuple::__type, typename __decay_and_strip::__type, typename __decay_and_strip::__type>' to 'tuple' return std::make_tuple(0, 0, 0); ^~~~~~~~~~~~~~~~~~~~~~~~ /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:633:17: note: candidate constructor not viable: no known conversion from 'tuple::__type, typename __decay_and_strip::__type, typename __decay_and_strip::__type>' to 'const std::tuple &' for 1st argument constexpr tuple(const tuple&) = default; ^ /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:635:17: note: candidate constructor not viable: no known conversion from 'tuple::__type, typename __decay_and_strip::__type, typename __decay_and_strip::__type>' to 'std::tuple &&' for 1st argument constexpr tuple(tuple&&) = default; ^ /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:614:19: note: candidate template ignored: disabled by 'enable_if' [with _UElements = >] enable_if<_TMC<_UElements...>::template ^ /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:644:19: note: candidate template ignored: disabled by 'enable_if' [with _UElements = , _Dummy = void] enable_if<_TMC<_UElements...>::template ^ /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.1.1/../../../../include/c++/6.1.1/tuple:668:19: note: candidate template ignored: disabled by 'enable_if' [with _UElements = , _Dummy = void] enable_if<_TMC<_UElements...>::template ^ 1 error generated.