Вопрос простой, но я как то не понял.
Почему можно:
auto lst = {2.5f, 1.5f};
auto tpl = std::make_tuple("ololo", 1, lst);
auto tpl = std::make_tuple("ololo", 1, {2.5f, 1.5f});
main.cpp:13:57: error: too many arguments to function 'constexpr std::tuple<typename std::__decay_and_strip<_Elements>::__type ...> std::make_tuple(_Elements&& ...) [with _Elements = {}]' auto tpl = std::make_tuple(«ololo», 1, {2.5f, 1.5f}); ^ In file included from prog.cpp:5:0: /usr/include/c++/5/tuple:966:5: note: declared here make_tuple(_Elements&&... __args) ^