#include <iostream>
struct base {
base() { test(); }
virtual void test() { std::cout << "base" << std::endl; }
};
struct derived : virtual base {
void test() { std::cout << "derived" << std::endl; }
};
int main()
{
derived d;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IGJhc2UgewoJYmFzZSgpIHsgdGVzdCgpOyB9Cgl2aXJ0dWFsIHZvaWQgdGVzdCgpIHsgc3RkOjpjb3V0IDw8ICJiYXNlIiA8PCBzdGQ6OmVuZGw7IH0KfTsKCnN0cnVjdCBkZXJpdmVkIDogdmlydHVhbCBiYXNlIHsKCXZvaWQgdGVzdCgpIHsgc3RkOjpjb3V0IDw8ICJkZXJpdmVkIiA8PCBzdGQ6OmVuZGw7IH0KfTsKCmludCBtYWluKCkKewoJZGVyaXZlZCBkOwoJcmV0dXJuIDA7Cn0=