aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/cpp1z/aligned-new8.C
blob: 11dd45722b78a8553bf0112d966dd1e7733db8de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// PR c++/82760
// { dg-options -std=c++17 }
// { dg-do run }

#include <new>
#include <cstddef>

struct alignas(2 * alignof (std::max_align_t)) aligned_foo {
  char x[2048];

  ~aligned_foo() { }
  aligned_foo() { __builtin_memset(x, 0, sizeof(x)); }
};

int main()
{
  aligned_foo * gFoo = new (std::nothrow) aligned_foo[2];
  delete[] gFoo;
}