PR tree-optimization/61112 - repeated conditional triggers false positive -Wmaybe-uninitialized
gcc/testsuite/ChangeLog: PR tree-optimization/61112 * gcc.dg/uninit-pr61112.c: New test.
This commit is contained in:
parent
7b6ca93b2d
commit
77093a75ca
89
gcc/testsuite/gcc.dg/uninit-pr61112.c
Normal file
89
gcc/testsuite/gcc.dg/uninit-pr61112.c
Normal file
@ -0,0 +1,89 @@
|
||||
/* PR tree-optimization/61112 - repeated conditional triggers false-positive
|
||||
-Wmaybe-uninitialized warning
|
||||
{ dg-do compile }
|
||||
{ dg-options "-O2 -Wall" } */
|
||||
|
||||
int p;
|
||||
|
||||
void foo_c0 (int x, int y, int z)
|
||||
{
|
||||
int w;
|
||||
if (x)
|
||||
w = z;
|
||||
if (y)
|
||||
w = __LINE__;
|
||||
|
||||
if (x || y)
|
||||
p = w; // { dg-bogus "-Wmaybe-uninitialized" }
|
||||
}
|
||||
|
||||
|
||||
void foo_c5_1_1 (int x, int y, int z, int a)
|
||||
{
|
||||
int w;
|
||||
if (x)
|
||||
w = z;
|
||||
if (y)
|
||||
w = __LINE__;
|
||||
if (a)
|
||||
w = __LINE__;
|
||||
|
||||
if (x || y || a)
|
||||
p = w; // { dg-bogus "-Wmaybe-uninitialized" "pr61112" { xfail *-*-* } }
|
||||
}
|
||||
|
||||
void foo_c5_1_2 (int x, int y, int z, int a)
|
||||
{
|
||||
int w;
|
||||
if (x)
|
||||
w = z;
|
||||
if (y)
|
||||
w = __LINE__;
|
||||
if (a)
|
||||
w = __LINE__;
|
||||
|
||||
if (x || a || y)
|
||||
p = w; // { dg-bogus "-Wmaybe-uninitialized" "pr61112" { xfail *-*-* } }
|
||||
}
|
||||
|
||||
void foo_c5_1_3 (int x, int y, int z, int a)
|
||||
{
|
||||
int w;
|
||||
if (x)
|
||||
w = z;
|
||||
if (y)
|
||||
w = __LINE__;
|
||||
if (a)
|
||||
w = __LINE__;
|
||||
|
||||
if (a || x || y)
|
||||
p = w; // { dg-bogus "-Wmaybe-uninitialized" "pr61112" { xfail *-*-* } }
|
||||
}
|
||||
|
||||
void foo_c5_2 (int x, int y, int z, int a)
|
||||
{
|
||||
int w;
|
||||
if (x)
|
||||
w = __LINE__;
|
||||
if (y)
|
||||
w = z;
|
||||
if (a)
|
||||
w = __LINE__;
|
||||
|
||||
if (x || y || a)
|
||||
p = w; // { dg-bogus "-Wmaybe-uninitialized" }
|
||||
}
|
||||
|
||||
void foo_c5_3 (int x, int y, int z, int a)
|
||||
{
|
||||
int w;
|
||||
if (x)
|
||||
w = __LINE__;
|
||||
if (y)
|
||||
w = __LINE__;
|
||||
if (a)
|
||||
w = z;
|
||||
|
||||
if (x || y || a)
|
||||
p = w; // { dg-bogus "-Wmaybe-uninitialized" }
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user