// PR c++/46220
// According to the letter of the standard this is invalid,
// but that seems like a bug.
class Baz;
class Foo {
public:
    virtual const Baz* getBaz() = 0;
};
class Bar : public Foo {
public:
    Baz* getBaz();
};
// PR c++/46220
// According to the letter of the standard this is invalid,
// but that seems like a bug.
class Baz;
class Foo {
public:
    virtual const Baz* getBaz() = 0;
};
class Bar : public Foo {
public:
    Baz* getBaz();
};