diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.mike/p789a.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.mike/p789a.C | 43 |
1 files changed, 0 insertions, 43 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p789a.C b/gcc/testsuite/g++.old-deja/g++.mike/p789a.C deleted file mode 100644 index b0df9f646de..00000000000 --- a/gcc/testsuite/g++.old-deja/g++.mike/p789a.C +++ /dev/null @@ -1,43 +0,0 @@ -// global and local multidimensional array objects are not getting -// constructors called on any dimension, other than the first. Also, -// the destructors are not being called. Seems odd, they probably -// used to work. :-( -// prms-id: 789 - -extern "C" void printf (char *, ...); -struct foo -{ - static int count; - void print (int i, int j) { printf ("foo[%d][%d] = %d\n", i, j, x); } - int x; - foo () { - x = count++; - printf("this %d = %x\n", x, (void *)this); - } - virtual ~foo () { - printf("this %d = %x\n", x, (void *)this); - --count; - } -}; -int foo::count; - - -int main () -{ - { - foo array[3][3]; - for (int i = 0; i < 3; i++) - { - for (int j = 0; j < 3; j++) - { - printf("&a[%d][%d] = %x\n", i, j, (void *)&array[i][j]); - } - } - // The count should be nine, if not, fail the test. - if (foo::count != 9) - return 1; - } - if (foo::count != 0) - return 1; - return 0; -} |