(root)/
gcc-13.2.0/
gcc/
testsuite/
c-c++-common/
Winit-self5.c
       1  /* PR c++/105593 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-W -Wall -Wno-init-self" } */
       4  
       5  void bar (int);
       6  
       7  static inline int
       8  baz (void)
       9  {
      10  #pragma GCC diagnostic push
      11  #pragma GCC diagnostic ignored "-Winit-self"
      12    int u = u;		/* { dg-bogus "'u' is used uninitialized" } */
      13  #pragma GCC diagnostic pop
      14    return u;
      15  }
      16  
      17  void
      18  foo (void)
      19  {
      20    int u = baz ();
      21    bar (u);
      22  }
      23  
      24  static inline int
      25  qux (void)
      26  {
      27    int u = u;		/* { dg-bogus "'u' is used uninitialized" } */
      28    return u;
      29  }
      30  
      31  void
      32  corge (void)
      33  {
      34    int u = qux ();
      35    bar (u);
      36  }