Consider the following C++ code:
struct B { }; struct A { A(int); A(A&); // missing const is intentional A(B); operator B
The error lists all the potential candidates to be used, and why they cannot be used. It lists the conversion from B because its one of the constructors, but it doesn't know how to use it in this case, so it doesn't.
B