1// { dg-do run } 2// { dg-options "-O2" } 3// Based on a testcase by Bryan Weston <bryanw@bluemoon.sps.mot.com> 4// egcs 1.1 fails to increment count 5 6 7struct Base { Base() {} }; // removing the constructor fixes the problem 8struct Derived : Base {}; // so does removing the base class 9 10int main() { 11 int count = 0; 12 Derived* array[1]; // making this Base*[1] does not fix the problem 13 array[count++] = new Derived (); // but then new Base() does 14 if (count!=1) 15 return 1; 16} 17