PR c++/80290
[official-gcc.git] / gcc / testsuite / g++.dg / init / new47.C
blobfadc4d98ab5b9559bb6b5ac2cafe75087b3a57e7
1 // PR c++/70448
2 // { dg-do compile }
3 // { dg-options "-Wall" }
4 // { dg-require-effective-target alloca }
6 typedef __typeof__ (sizeof 0) size_t;
7 void *operator new (size_t, void *p) { return p; }
8 void *operator new[] (size_t, void *p) { return p; }
9 struct S { size_t s; };
10 void bar (S *);
12 void
13 foo (unsigned int s)
15   char t[sizeof (S) + s];
16   S *f = new (t) S;
17   bar (f);
18   f = new (t) S[1];
19   bar (f);