doc: Mark up __cxa_atexit as @code.
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.robertl / eb22.C
blobc0921bb43de93c135267546c43677b63465fe56d
1 // { dg-do assemble  }
2 // Ambiguous conversion, three candidates:
3 // builtin == (int, int), and the two user-defined operators
4 // Each one requires a user-defined ICS where another uses builtin conversions,
5 // so none is the best viable function.
7 class MyInt
9 public:
10         MyInt(int = 0) {}
11         operator int() const {return 2;}
14 bool operator==(const MyInt& a, const int& b) // { dg-message "operator==" "" { target c++17_down } }
16         return (int)a == b;
19 bool operator==(const MyInt& a, const MyInt& b) // { dg-message "operator==" "" { target c++17_down } }
21         return (int)a == (int)b;
24 bool f()
26   return 3 == MyInt();  // { dg-error "ambiguous" "err" { target c++17_down } }