init5.C: XFAIL if cxa-atexit is false.
* g++.old-deja/g++.other/init5.C: XFAIL if cxa-atexit is false. * g++.old-deja/g++.other/init19.C: Ditto. * g++.old-deja/g++.other/init18.C: Ditto, plus change _Exit to _exit and add other platforms as expected failures. From-SVN: r114327
This commit is contained in:
parent
239559e797
commit
8659e538c5
4 changed files with 19 additions and 4 deletions
|
@ -1,3 +1,10 @@
|
|||
2006-06-02 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
* g++.old-deja/g++.other/init5.C: XFAIL if cxa-atexit is false.
|
||||
* g++.old-deja/g++.other/init19.C: Ditto.
|
||||
* g++.old-deja/g++.other/init18.C: Ditto, plus change _Exit to _exit
|
||||
and add other platforms as expected failures.
|
||||
|
||||
2006-06-01 Steve Ellcey <sje@cup.hp.com>
|
||||
|
||||
* lib/target-supports.exp (is-effective-target): Add cxa_atexit.
|
||||
|
|
|
@ -1,6 +1,14 @@
|
|||
// { dg-do run }
|
||||
// Some targets (e.g. those with "set_board_info needs_status_wrapper 1"
|
||||
// in their dejagnu baseboard description) require that the status is
|
||||
// final when exit is entered (or main returns), and not "overruled" by a
|
||||
// destructor calling _exit. It's not really worth it to handle that.
|
||||
//
|
||||
// Any platform that doesn't have proper __cxa_atexit support will also fail.
|
||||
//
|
||||
// { dg-do run { xfail { { mmix-knuth-mmixware xtensa-*-elf* arm*-*-elf arm*-*-eabi m68k-*-elf } || { ! cxa_atexit } } } }
|
||||
|
||||
#include <stdlib.h>
|
||||
extern "C" void _exit (int);
|
||||
|
||||
static int cnt = 0;
|
||||
|
||||
|
@ -8,7 +16,7 @@ class Foo2
|
|||
{
|
||||
public:
|
||||
Foo2() {};
|
||||
~Foo2() { if (++cnt == 2) _Exit (0); };
|
||||
~Foo2() { if (++cnt == 2) _exit (0); };
|
||||
};
|
||||
|
||||
static Foo2& GetFoo2()
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// { dg-do run }
|
||||
// { dg-do run { xfail { ! cxa_atexit } } }
|
||||
#include <stdlib.h>
|
||||
|
||||
#define assert(x) do { if (! (x)) abort(); } while (0)
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// { dg-do run }
|
||||
// { dg-do run { xfail { ! cxa_atexit } } }
|
||||
// Objects must be destructed in decreasing cnt order
|
||||
// Original test attributed to James Kanze <jkanze@otelo.ibmmail.com>
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue