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