For the test case below, clang+±12 does not emit an error (likely the same on ToT). Nor does g+±9.4.0 with libstdc++. But should they? I suppose “23.7.3.1 Constructors” of C++17 is the relevant specification. Can anyone clarify? I’m not quite sure: is this particular overload resolution issue more of a compiler or library issue?
$ clang++ -fsyntax-only -std=c++17 -x c++ -c test_case.cpp -stdlib=libc++