// { dg-do assemble } // { dg-options "" } class Pooled { }; class RefCounted { }; class BrickExpressionBase : public RefCounted, public Pooled { }; template class BrickExpression : public BrickExpressionBase { }; template void f() { typedef BrickExpression ExprT; ExprT(3).apply; }