]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
pr51264-4.C: New test.
authorTom de Vries <tom@codesourcery.com>
Tue, 17 Apr 2012 18:28:50 +0000 (18:28 +0000)
committerTom de Vries <vries@gcc.gnu.org>
Tue, 17 Apr 2012 18:28:50 +0000 (18:28 +0000)
2012-04-17  Tom de Vries  <tom@codesourcery.com>

* g++.dg/pr51264-4.C: New test.

From-SVN: r186547

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/pr51264-4.C [new file with mode: 0644]

index 0c42dee169d4d139574909db641df37aaf176920..06e5162cf3a2e12f5c6d93ac9abad77b8670370d 100644 (file)
@@ -1,3 +1,7 @@
+2012-04-17  Tom de Vries  <tom@codesourcery.com>
+
+       * g++.dg/pr51264-4.C: New test.
+
 2012-04-17  Paolo Carlini  <paolo.carlini@oracle.com>
 
        PR c++/52599
diff --git a/gcc/testsuite/g++.dg/pr51264-4.C b/gcc/testsuite/g++.dg/pr51264-4.C
new file mode 100644 (file)
index 0000000..58a1b14
--- /dev/null
@@ -0,0 +1,30 @@
+/* { dg-do compile } */
+/* { dg-options "-O0 -Werror -Wreturn-type" } */
+
+/* Test-case from http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25973#c4.  */
+
+struct Block
+{
+  public:
+  Block ();
+  ~Block ();
+};
+
+bool func (bool bar)
+{
+  Block block;
+  bool foo = false;
+
+  if (!foo || bar)
+    do
+      {
+       return true;
+      }
+    while (0);
+  else
+    do
+      {
+       return false;
+      }
+    while (0);
+}