#include <iostream>
using namespace std;
class B{
protected:
auto f(){return 1;}
};

struct D:public B{
struct E{
auto g(){
B::f();
}

};
E e;
};
int main() {
D{}.e.g();
return 0;
}
}
このコードでどうやってEのなかでfの定義をstaticにせずfをよぶことができますか?