rt_gccstream/gcc/testsuite/gcc.dg/Wjump-misses-init-1.c

157 lines
1.7 KiB
C

/* { dg-do compile } */
/* { dg-options "-Wjump-misses-init" } */
int
f1 (int a)
{
if (a > 0)
{
int i = 7; /* { dg-message "here" } */
lab: /* { dg-message "here" } */
return a;
}
else
{
if (a < 0)
goto lab; /* { dg-warning "jump" } */
return 1;
}
}
int
f2 (int a)
{
if (a > 0)
{
if (a < 0)
goto lab; /* { dg-warning "jump" } */
return 1;
}
else
{
int i = 7; /* { dg-message "here" } */
lab: /* { dg-message "here" } */
return a;
}
}
int
f3 (int a)
{
if (a > 0)
{
static int i = 7;
lab:
return a;
}
else
{
if (a < 0)
goto lab;
return 1;
}
}
int
f4 (int a)
{
if (a > 0)
{
if (a < 0)
goto lab;
return 1;
}
else
{
static int i = 7;
lab:
return a;
}
}
int
f5 (int a)
{
if (a > 0)
{
int b = 1;
if (a < 0)
goto lab;
}
lab:
return a;
}
int
f6 (int a)
{
if (a > 0)
{
lab:
return a;
}
else
{
int b = 1;
goto lab;
}
}
int
f7 (int a)
{
switch (a) /* { dg-message "switch" } */
{
int b = 1; /* { dg-message "here" } */
case 1: /* { dg-warning "jump" } */
return a;
}
}
int
f8 (int a)
{
switch (a) /* { dg-message "switch" } */
{
int b = 1; /* { dg-message "here" } */
case 1: /* { dg-warning "jump" } */
goto lab;
}
lab:
return a;
}
int
f9 (int a)
{
switch (a)
{
case 0:
{
int b = 1;
return b;
}
case 1:
return a;
}
}
int
f10 (int a)
{
switch (a)
{
case 0:
{
int b = 1;
goto lab;
}
case 1:
goto lab;
}
lab:
return a;
}