// Build don't link: // Origin: Ian Nixon class Action { public: virtual void action () = 0; }; class Var { public: template void Add() { struct tmp : public Action { void action () {} }; tmp *tp = new tmp; } };