blob: ddf5e460c28e6c462c8526a924421b5ec7788413 [file] [log] [blame]
// { dg-do compile }
// { dg-require-effective-target c++11 }
// { dg-additional-options "-msve-vector-bits=128" { target aarch64_sve } }
template <typename a> struct b { using c = a; };
template <typename a, template <typename> class> using f = b<a>;
template <typename a, template <typename> class g>
using h = typename f<a, g>::c;
struct i {
template <typename j> using k = typename j::l;
};
struct m : i {
using l = h<char *, k>;
};
class n {
public:
char operator[](long o) {
m::l s;
return s[o];
}
} p;
n r;
int q() {
long d;
for (long e; e; e++)
if (p[e] == r[e])
d++;
return d;
}