Under the conditions specified in
[dcl.init], as
part of an initialization of an object of non-class type,
a conversion function can be invoked to convert an initializer
expression of class type to the type of the object
being initialized
. Overload resolution is used to select the
conversion function to be invoked
. Assuming that “cv T” is the
type of the object being initialized,
the candidate functions are selected as follows: