// { dg-do assemble  }
// GROUPS passed templates
template<int N_rank>
class Array;


template<class T>
class ArraySectionInfo {
public:
    enum { rank = 0 };
};


template<class T1>
class SliceInfo {
public:
    enum {
        rank          = ArraySectionInfo<T1>::rank
    };

    typedef Array<rank> T_slice;
};

template<class T2>
typename  SliceInfo<T2>::T_slice
foo(T2 r2)
{
  return SliceInfo<T2>::T_slice();
}

