nTo determine if a user defined type conversion is used, the compiler checks if a conversion is defined for the type needed.
nIf there is, then the
compiler checks that the type matches
the type supplied or that the type supplied can be converted by applying one of the built-in type promotions or conversions.
nOnly one such built-in type promotion or conversion will be applied before applying the user defined type conversion itself.
nThus, at most one built-in type conversion and at most one user defined type conversion will ever be implicitly
applied when converting from one
type to another.