// { dg-do run } // Test that A's copy assignment method is called when B's instance // member array of A is assigned. // Contributed by Brian Gaeke, public domain. int status = 1; class A { public: int i; A &operator =(const A &i) { status = 0; } }; class B { public: A arr[10]; }; int main (int argc, char **argv) { B b; b.arr[0].i = 15; B a; a = b; // trigger copy assignment return status; }