#include <iostream>
#include <iomanip>

using namespace std;

struct Widget
{
    int widget;
};

struct Button
    : public Widget
{
    int button;
};

int main()
{
	Widget* w = new Widget;
	Button* b = dynamic_cast<Button*>(w);
}