]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/testsuite/g++.old-deja/g++.eh/new1.C
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / testsuite / g++.old-deja / g++.eh / new1.C
diff --git a/gcc/testsuite/g++.old-deja/g++.eh/new1.C b/gcc/testsuite/g++.old-deja/g++.eh/new1.C
deleted file mode 100644 (file)
index 788a39b..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-// Test that a throw in foo destroys the A, but does not free the memory.
-
-#include <cstddef>
-#include <cstdlib>
-#include <new>
-
-struct A {
-  A();
-  ~A();
-};
-
-struct B {
-  B (A);
-};
-
-void foo (B*);
-
-int newed, created;
-
-int main ()
-{
-  try {
-    foo (new B (A ()));
-  } catch (...) { }
-
-  return !(newed && !created);
-}
-
-A::A() { created = 1; }
-A::~A() { created = 0; }
-B::B(A) { }
-void foo (B*) { throw 1; }
-
-void* operator new (size_t size) throw (std::bad_alloc)
-{
-  ++newed;
-  return (void *) std::malloc (size);
-}
-
-void operator delete (void *p) throw ()
-{
-  --newed;
-  std::free (p);
-}
-
-
-
-