The Standard says that std::tuple has the following member functions
std::tuple
constexpr tuple(); explicit tuple(const Types&...);
C
At first sight, the ambiguity would only matter at the point where it's called, and then you have normal overload resolution.