]> gcc.gnu.org Git - gcc.git/commitdiff
* g++.dg/warn/incomplete1.C: New test.
authorBrian R. Gaeke <brg@dgate.ORG>
Sat, 6 Jul 2002 16:58:39 +0000 (16:58 +0000)
committerAlexandre Oliva <aoliva@gcc.gnu.org>
Sat, 6 Jul 2002 16:58:39 +0000 (16:58 +0000)
From-SVN: r55289

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/warn/incomplete1.C [new file with mode: 0644]

index 8ce200dd0e5368af9749025e5bc7bcd098fdefbb..a18de74441519b81dc64e9c5965d2ea5ae63c187 100644 (file)
@@ -1,3 +1,7 @@
+2002-07-06  Brian R. Gaeke  <brg@dgate.ORG>, Alexandre Oliva  <aoliva@redhat.com>
+
+       * g++.dg/warn/incomplete1.C: New test.
+
 2002-07-05  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
 
        PR c++/7099
diff --git a/gcc/testsuite/g++.dg/warn/incomplete1.C b/gcc/testsuite/g++.dg/warn/incomplete1.C
new file mode 100644 (file)
index 0000000..f4d074a
--- /dev/null
@@ -0,0 +1,21 @@
+// { dg-do compile }
+
+// Contributed by Brian Gaeke; public domain.
+
+// 5 If the object being deleted has incomplete class type at the
+// point of deletion and the complete class has a non-trivial
+// destructor or a deallocation function, the behavior is undefined.
+
+// (But the deletion does not constitute an ill-formed program. So the
+// program should nevertheless compile, but it should give a warning.)
+
+class A;       // { dg-warning "forward declaration of `struct A'" "" }
+
+A *a;          // { dg-warning "`a' has incomplete type" "" }
+
+int
+main (int argc, char **argv)
+{
+  delete a;    // { dg-warning "delete" "" { xfail *-*-* } }
+  return 0;
+}
This page took 0.097628 seconds and 5 git commands to generate.