// Build don't link: // Origin: Leon Bottou class AA { protected: template struct BB { T x; BB(const T &x) : x(x) { }; }; template struct CC : public BB { CC(const T &x) : BB(x) { }; }; };