https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84769
Bug ID: 84769 Summary: variant::get(): unscoped call to get<size_t> Product: gcc Version: 7.3.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: duarte at scylladb dot com Target Milestone: --- In the implementation of T& get(variant<Types...>& v) and friends, the calls to the size_t-templated overloads of get is unscoped, like in [1]. This can lead to surprising situations if a similar function is available in the current namespace (say, to provide a common interface between <variant> and <boost/variant.hpp>). I'm not aware of the standard requiring get() to be an extension point, so maybe the calls should be scoped? [1] https://github.com/gcc-mirror/gcc/blob/master/libstdc++-v3/include/std/variant#L922