1 // { dg-do run { target c++17 } }
2 
3 #include <new>
4 
5 struct alignas(64) A {
6   int i;
7 };
8 
new(std::size_t n,std::align_val_t)9 void* operator new (std::size_t n, std::align_val_t)
10 {
11   return operator new (n);
12 }
13 
14 bool deleted = false;
delete(void * p,std::size_t,std::align_val_t)15 void operator delete (void *p, std::size_t, std::align_val_t)
16 {
17   deleted = true;
18   operator delete (p);
19 }
20 
main()21 int main()
22 {
23   A *p = new A;
24   delete p;
25   if (!deleted)
26     __builtin_abort();
27 }
28