blob: 2599a53dbeb54c8e65f60443a8a893cec822e2e5 [file] [log] [blame]
// PR c++/87357
// { dg-do compile }
struct B { };
struct X : public B {
operator X(); // { dg-warning "3:converting .X. to the same type will never use a type conversion operator" }
operator X&(); // { dg-warning "3:converting .X. to a reference to the same type will never use a type conversion operator" }
operator X() const; // { dg-warning "3:converting .X. to the same type will never use a type conversion operator" }
operator const X(); // { dg-warning "3:converting .X. to the same type will never use a type conversion operator" }
operator B(); // { dg-warning "3:converting .X. to a base class .B. will never use a type conversion operator" }
operator B&(); // { dg-warning "3:converting .X. to a reference to a base class .B. will never use a type conversion operator" }
operator B() const; // { dg-warning "3:converting .X. to a base class .B. will never use a type conversion operator" }
operator const B(); // { dg-warning "3:converting .X. to a base class .const B. will never use a type conversion operator" }
operator void(); // { dg-warning "3:converting .X. to .void. will never use a type conversion operator" }
operator void() const; // { dg-warning "3:converting .X. to .void. will never use a type conversion operator" }
};