// { dg-do assemble } // 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) { } }; };