(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
debug/
pr43972.c
       1  /* PR debug/43972 */
       2  /* { dg-do compile } */
       3  /* { dg-options "-g -w" } */
       4  /* { dg-options "-g -fpic -w" { target fpic } } */
       5  
       6  struct { int *b1; } *f1 ();
       7  short v1[1];
       8  struct S { int b2; };
       9  void
      10  foo (struct S *a1, union { char *b3; unsigned *b4; int *b5; } *a2)
      11  {
      12    int d;
      13    switch (d)
      14      {
      15      case 0:
      16        {
      17  	int c = a1->b2, i;
      18  	if (f1 () == 0)
      19  	  *a2->b3++ = 2;
      20  	else if (((long) (f1 () - f1 ())) ^ ((long) f1 ()->b1 - ((long) f1 () & 8)))
      21  	  *a2->b3++ = (long) f1 - ((long) f1 () & 0xff);
      22  	else
      23  	  *a2->b4++ = (long) f1;
      24  	for (i = 0; i < c; i++)
      25  	  *a2->b5++ = (long) v1;
      26  	foo (a1, a2);
      27        }
      28      }
      29  }