1/* { dg-do compile } */
2
3struct A
4{
5  int a[4];
6  int& operator[](int i) { return a[i]; }
7};
8
9struct B : public A
10{
11  int& operator[](int i) { return A::operator[](i); }
12};
13
14void foo(B &b)
15{
16  for (int i=0; i<4; ++i)
17    b[i] = 0;
18}
19
20/* { dg-final { cleanup-tree-dump "vect" } } */
21