// Build don't link: // Origin: David Margery // Bug: We fail to set DECL_TEMPLATE_PARM_P when reducing template // parameter level. template class A2 { public: A2() {}; virtual ~A2() {}; template A2 & operator=(const A2 o) { i=o.i; return *this; }; T i; T j; }; template class A1 { public: A1() {}; virtual ~A1() {}; template A1 & operator=(const A1 o) { i=o.i; return *this; }; template A1 & operator=(const A2 o) { i=o.i; return *this; }; T i; }; template