2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.mike / p789.C
blob24dbf6e7159ea5b5c3da36f835c620f4de921dbf
1 // { dg-do run  }
2 // prms-id: 789
4 extern "C" int printf (const char *, ...);
5 struct foo
7   static int count;
8   virtual void print (int i, int j) { printf ("foo[%d][%d] = %d\n", i, j, x); }
9   int x;
10   foo () { x = count++; }
12 int foo::count;
13 struct bar : virtual public foo
15   virtual void print (int i, int j) { printf ("bar[%d][%d] = %d\n", i, j, x); }
18 // bar array[3][3];
19 foo array[3][3];
21 int main ()
23   for (int i = 0; i < 3; i++)
24     for (int j = 0; j < 3; j++) {
25 //      printf("&a[%d][%d] = %x\n", i, j, (void *)&array[i][j]);
26       array[i][j].print (i, j);
27     }
28   return 0;