]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - gcc/testsuite/g++.old-deja/g++.mike/eh2.C
Imported gcc-4.4.3
[msp430-gcc.git] / gcc / testsuite / g++.old-deja / g++.mike / eh2.C
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/eh2.C b/gcc/testsuite/g++.old-deja/g++.mike/eh2.C
deleted file mode 100644 (file)
index c92afde..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-// Special g++ Options: -fexceptions
-// excess errors test - XFAIL a29k-*-* sparc64-*-elf arm-*-pe
-
-#include <cstdlib>
-#include <iostream>
-
-class Vector {
-private:
-  int *p;
-  int sz;
-
-public:
-  // Exception class
-  class Range     {
-  private:
-    int value_i;
-
-  public:
-    Range( int i ) { value_i = i; };
-    int value() { return value_i; };
-  };
-
-  Vector( int s );
-  ~Vector();
-  int  size() { return sz; };
-  int& operator []( int i );
-};
-
-Vector::Vector(int s) {
-  sz = s;
-  p = new int[sz];
-}
-
-Vector::~Vector() {
-  delete [] p;
-}
-
-int&
-Vector::operator [](int i) {
-  if (0<=i && i<sz) {
-    return p[i];
-  } else {
-    throw Range( i );
-  }
-}
-
-void crash(Vector& v ) {
-  v[v.size()+10];  // Triggers range error!
-}
-
-void do_something(Vector& v) {
-  crash( v );
-}
-
-void
-f(Vector& v) {
-  try {
-    do_something( v );
-  } catch (Vector::Range& r) {
-    std::cout << "Invalid vector range " << r.value()
-      << " caught in f()" << std::endl;
-    std::exit(0);
-  }
-}
-
-main() {
-  Vector v(10);
-
-  f( v );
-  return 1;
-}
-
-
-