Can you see anything wrong with this function declaration?
template<typename... Containers>
std::tuple<typename Containers::value_type...>
foo(const Containers &...args);
When I try to call it, like this:
foo(std::list<int>(), std::vector<float>());
MSVC2013 says error C2027: use of undefined type 'std::tuple<Containers::value_type>
.
I tried rewriting the function declaration with the "late return" syntax and it made no difference.
Is there any way I can achieve what this code is trying to do?