New test for PR tree-optimization/44547 - -Wuninitialized reports false warning in...
authorMartin Sebor <msebor@redhat.com>
Thu, 25 Mar 2021 21:31:46 +0000 (15:31 -0600)
committerMartin Sebor <msebor@redhat.com>
Thu, 25 Mar 2021 21:31:46 +0000 (15:31 -0600)
gcc/testsuite/ChangeLog:
* gcc.dg/uninit-pr44547.c: New.

gcc/testsuite/gcc.dg/uninit-pr44547.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.dg/uninit-pr44547.c b/gcc/testsuite/gcc.dg/uninit-pr44547.c
new file mode 100644 (file)
index 0000000..ee1035a
--- /dev/null
@@ -0,0 +1,61 @@
+/* PR tree-optimization/44547 - -Wuninitialized reports false warning
+   in nested switch statements
+   { dg-do compile }
+   { dg-options "-O1 -Wall" } */
+
+__attribute__ ((noipa)) int test_O1 (int argc)
+{
+  switch( argc )
+    {
+    case 1:
+    case 2:
+    case 4:
+      {
+       int n;
+       switch( argc )
+         {
+         case 1:
+         case 2:
+         case 4:
+           n = argc;
+           break;
+         }
+
+       return n;
+
+       break;
+      }
+    }
+
+  return 0;
+}
+
+
+#pragma GCC optimize ("2")
+
+__attribute__ ((noipa)) int test_O2 (int argc)
+{
+  switch( argc )
+    {
+    case 1:
+    case 2:
+    case 4:
+      {
+       int n;
+       switch( argc )
+         {
+         case 1:
+         case 2:
+         case 4:
+           n = argc;
+           break;
+         }
+
+       return n;
+
+       break;
+      }
+    }
+
+  return 0;
+}