Description
The following code compiles with GCC and MSVC but fails with clang
namespace a {
template <typename> class b {
public:
typedef int string_type;
operator string_type();
};
} // namespace a
template <class> void c() {
&a::b<char>::operator string_type;
}
Godbolt - https://godbolt.org/z/sWs8rvq98
Clang accepts the code if string_type
is qualified - https://godbolt.org/z/efPd9d8Gz . Based on examples in http://eel.is/c++draft/basic.lookup#unqual-5, I think the lookup should succeed without qualification as well.