// Origin: Theo Papadopoulo template struct I { }; struct R { R() { } }; class H: public R { public: H(): R() { } double& f() { return a; } double f() const { return 1.0; } double a; }; struct A { typedef I F; A() { } };