2 // Test that a throw in foo destroys the A, but does not free the memory.
27 return !(newed && !created);
30 A::A() { created = 1; }
31 A::~A() { created = 0; }
33 void foo (B*) { throw 1; }
35 void* operator new (size_t size) throw (std::bad_alloc)
38 return (void *) std::malloc (size);
41 void operator delete (void *p) throw ()