(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
uninit-pred-8_c.c
       1  
       2  /* { dg-do compile } */
       3  /* { dg-options "-Wuninitialized -O2" } */
       4  
       5  int g;
       6  void bar();
       7  void blah(int);
       8  
       9  int foo (int n, int l, int m, int r)
      10  {
      11    int v;
      12  
      13    if (n < 10 && m > 100  && r < 20 )
      14      v = r;
      15  
      16    if (m) g++; 
      17    else  bar();
      18  
      19    if ( n <= 8 &&  m > 101  && r < 19 )
      20        blah(v); /* { dg-bogus "uninitialized" "bogus warning" } */
      21  
      22    return 0;
      23  }
      24  
      25  int foo_2 (int n, int l, int m, int r)
      26  {
      27    int v;
      28  
      29    if (n < 10 && m > 100  && r < 20 )
      30      v = r;
      31  
      32    if (m) g++; 
      33    else  bar();
      34  
      35    if ( n <= 8 &&  m > 99  && r < 19 )
      36        blah(v); /* { dg-warning "uninitialized" "warning" } */
      37  
      38    return 0;
      39  }