What is going on with the second element in the final example?
std::pair x {1, 2.0};
auto [v, w] = x;
Why is the second element a float according to the blog post? std::tuple_element<0, std::pair<int, float> >::type&