This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

g++.oliva/delete3.C


This test fails with the IA-64 EH library.  The two-phase process
means that we discover that there is no handler for the exception
before running cleanups, and we std::terminate.

This is supposed to be a feature, since you get to see from whence
the uncaught exception was thrown, rather than simply seeing an abort
at top of stack or whereever.

Solved simply by catching the exception.

Ok?


r~


	* g++.old-deja/g++.oliva/delete3.C (main): Catch the exception.

Index: gcc/testsuite/g++.old-deja/g++.oliva/delete3.C
===================================================================
RCS file: /cvs/gcc/egcs/gcc/testsuite/g++.old-deja/g++.oliva/delete3.C,v
retrieving revision 1.2
diff -c -p -d -r1.2 delete3.C
*** delete3.C	2000/06/12 23:48:12	1.2
--- delete3.C	2001/03/11 00:13:40
*************** struct Bar : virtual Foo {
*** 29,36 ****
  };
  
  int main() {
!   delete [] new Bar[2];
    abort();
  }
- 
- 
--- 29,37 ----
  };
  
  int main() {
!   try {
!     delete [] new Bar[2];
!   } catch (...) {
!   }
    abort();
  }


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]