The standard in this matter is perfectly clear:
14.6.2 Dependent Names [temp.dep]
3 , -, .
OutterTemplate<T>::InnerBase OutterTemplate<T>::Inner, cout << name_; . , InnerBase . this-> :
14.6.2.1 [temp.dep.type]
7 , , .
this-> - , , name_ , OutterTemplate<T>::Inner , name_ .