blob: 08eb3077f024b96cf2142d3bfbda8a0f7e8490b3 [file] [log] [blame]
// { dg-do assemble }
template < class T, template < class > class E1, template < class > class E2 >
class Add {
public:
Add(const E1<T>& e1, const E2<T>& e2) {}
};
template < class T >
struct Id {
template < template < class > class E >
Add < T, ::Id, E > operator+(const E<T>& e) const {
return Add < T, ::Id, E >(*this, e);
}
};
template struct Id<double>;