// { dg-do run } // GROUPS passed destructors // dtor file: // Message-Id: <1992Jun25.181845.18886@leland.Stanford.EDU> // From: niz@leland.stanford.edu (Jim Nisbet) // Subject: gcc 2.2.2 -- c++ bug: destructor called twice (example) // Date: 25 Jun 92 18:18:45 GMT #include int things = 0; class foo { public: foo() { things++; } foo(const foo&) { things++; } ~foo() { things--; } int i; }; void sub(foo f) { ; } int main() { sub(foo()); if (things == 0) printf ("PASS\n"); else { printf ("FAIL\n"); return 1; } }