blob: 11c4fe5732f926a8305376f1358609af3d927d70 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
// PR c++/17670
// { dg-do run }
// { dg-skip-if "requires hosted libstdc++ for cstdlib size_t" { ! hostedlib } }
#include <cstdlib>
#include <new>
bool abort_new;
void *operator new[](size_t bytes)
#if __cplusplus <= 199711L
throw (std::bad_alloc)
#endif
{
if (abort_new)
abort();
return operator new (bytes);
}
struct X {};
int main () {
// Do not abort until main is running in case startup code uses
// operator new[].
abort_new = true;
new (X);
}
|