1// { dg-do assemble } 2 3struct A 4{ 5 operator bool () const; 6 operator const void * () const; 7}; 8 9struct B 10{ 11 A a; 12 int foo1 (); 13 int foo2 (); 14}; 15 16int 17B::foo1 () 18{ 19 return a ? 0 : 1; // ambiguous default type conversion for `operator !=' 20} 21 22int 23B::foo2 () 24{ 25 if (a) 26 return 0; 27 else 28 return 1; 29} 30