1 2 3 4 5 6 7 8 9 10 11
// bindgen-flags: -- -std=c++11 class Derived; class Base { public: virtual Derived* AsDerived() { return nullptr; } }; class Derived final : public Base { virtual Derived* AsDerived() override { return this; } };