mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-17 15:29:39 +08:00
up
From-SVN: r32818
This commit is contained in:
parent
6ab1432e57
commit
8cb5e385d6
@ -1,6 +1,8 @@
|
||||
// Based on a testcase by Bryan Weston <bryanw@bluemoon.sps.mot.com>
|
||||
// egcs 1.1 fails to increment count
|
||||
|
||||
// Special g++ Options: -O2
|
||||
|
||||
#include <cstdlib>
|
||||
|
||||
struct Base { Base() {} }; // removing the constructor fixes the problem
|
||||
|
43
gcc/testsuite/g++.old-deja/g++.other/crash15.C
Normal file
43
gcc/testsuite/g++.old-deja/g++.other/crash15.C
Normal file
@ -0,0 +1,43 @@
|
||||
// g++ crashed because we unsaved the TARGET_EXPR for the return value
|
||||
// for get_allocator without first expanding it, because it was part of the
|
||||
// cleanup for the temporary string.
|
||||
|
||||
// Derived from libstdc++ v3 code.
|
||||
|
||||
// Special g++ Options: -O2
|
||||
// Build don't link:
|
||||
|
||||
class AA {};
|
||||
|
||||
void fee (const AA&);
|
||||
|
||||
class basic_string
|
||||
{
|
||||
public:
|
||||
basic_string(const char*);
|
||||
|
||||
~basic_string()
|
||||
{ fee (this->get_allocator()); }
|
||||
|
||||
AA get_allocator();
|
||||
};
|
||||
|
||||
class failure
|
||||
{
|
||||
public:
|
||||
failure(const basic_string& __str);
|
||||
};
|
||||
|
||||
class foo
|
||||
{
|
||||
public:
|
||||
foo(int x)
|
||||
{
|
||||
throw failure ("");
|
||||
}
|
||||
};
|
||||
|
||||
void test05()
|
||||
{
|
||||
foo ofs(0);
|
||||
}
|
Loading…
Reference in New Issue
Block a user