blob: 57ff12e41f4f5f6d72f460ef0326e0c15d4a68a3 [file] [log] [blame]
// PR c++/9993
// Bug: We were failing to destroy b.
// { dg-do run }
int c, d;
struct Object {
Object() { ++c; }
Object(const Object&) { ++c; }
~Object() { ++d; }
};
Object function() {
int i = 0;
do {
Object b;
if (i++ == 2)
return b;
} while (1);
}
int main() {
function();
return c != d;
}