1 // Ambiguous conversion, three candidates:
2 // builtin == (int, int), and the two user-defined operators
3 // Each one requires a user-defined ICS where another uses builtin conversions,
4 // so none is the best viable function.
10 operator int() const {return 2;}
13 bool operator==(const MyInt& a, const int& b)
14 { // ERROR - candidate
18 bool operator==(const MyInt& a, const MyInt& b)
19 { // ERROR - candidate
20 return (int)a == (int)b;
25 return 3 == MyInt(); // ERROR - ambiguous