blob: 89055491a4892cf30c0dd86ee53edbe06f40ed1a [file] [log] [blame]
#include <new>
/* Placement new. */
void test_1 (void)
{
char buf[sizeof(int)];
int *p = new(buf) int (42);
}
/* Placement new[]. */
void test_2 (void)
{
char buf[sizeof(int) * 10];
int *p = new(buf) int[10];
}
/* Delete of placement new. */
void test_3 (void)
{
char buf[sizeof(int)]; // { dg-message "region created on stack here" }
int *p = new(buf) int (42);
delete p; // { dg-warning "memory on the stack" }
}
// { dg-prune-output "-Wfree-nonheap-object" }