blob: 12efcd386cf9ee74e7de4b789c5d47ee84002f30 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// Test for not calling mismatched placement delete.
#include <new>
#include <stddef.h>
int r = 0;
struct A {
A() { throw 1; }
void operator delete (void *p, int, long) { r = 1; ::operator delete (p); }
};
void * operator new (size_t size, int, int) { return operator new (size); }
int main ()
{
try {
A* ap = new (1, 5) A;
} catch (...) { }
return r;
}
|