In layman terms CD4 means that the changes proposed made it into C++17.
My current impression is that clang does not do what
[over.ics.rank] of C++17 seems to say. The
<
https://clang.llvm.org/cxx_dr_status.html> shows that they
consider themselves good with 1467 and 1589 since clang 3.7.
Yet there are differences:
#include <initializer_list>
#include <string>
#include <iostream>
void f1(int)
{
std::cout << "f1 1\n";
}
void f1(std::initializer_list<long>)
{
std::cout << "f1 2\n";
}
void foo(char const*)
{
std::cout << "foo 1\n";
}
void foo(std::initializer_list<std::string>)
{
std::cout << "foo 2\n";
}
int main()
{
f1({42}); // both output fl 2 like standard suggests
foo({"bar"}); // clang outputs foo 1, g++ outputs foo 2
// despite standard seems to suggest foo 2
}