3 // Contributed by Brian Gaeke; public domain.
5 // 5 If the object being deleted has incomplete class type at the
6 // point of deletion and the complete class has a non-trivial
7 // destructor or a deallocation function, the behavior is undefined.
9 // (But the deletion does not constitute an ill-formed program. So the
10 // program should nevertheless compile, but it should give a warning.)
12 class A; // { dg-warning "forward declaration of 'struct A'" "" }
14 A *a; // { dg-warning "'a' has incomplete type" "" }
17 main (int argc, char **argv)
19 delete a; // { dg-warning "delete" "" }