// PR c++/61433
// { dg-do compile { target c++11 } }
// { dg-options "-O -fcompare-debug -fno-inline -fno-ipa-pure-const -fipa-sra -Wno-return-type" }

template <class T>
struct A
{
  template <class V>
  struct B
  {
    int MEM;
  };
};
struct D {};
struct C: public A<int>::B<D>
{};
template <class T, class U, class V>
auto k(T t, U u, V v) -> decltype (t.U::template B<V>::MEM)
{}
int main()
{
  k( C(), A<int>(), D() );
  return 0;
}
