rt_gccstream/gcc/testsuite/gcc.dg/uninit-5.c

40 lines
620 B
C

/* Spurious uninitialized-variable warnings. */
/* Disable jump threading, etc to test compiler analysis. */
/* { dg-do compile } */
/* { dg-options "-O -Wuninitialized -fno-tree-dce -fno-tree-vrp -fno-tree-dominator-opts" } */
extern void use(int);
extern void foo(void);
void
func1(int cond)
{
int x; /* { dg-bogus "x" "uninitialized variable warning" } */
if(cond)
x = 1;
foo();
if(cond)
use(x);
}
void
func2 (int cond)
{
int x; /* { dg-bogus "x" "uninitialized variable warning" } */
int flag = 0;
if(cond)
{
x = 1;
flag = 1;
}
foo();
if(flag)
use(x);
}