(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
20001012-2.c
       1  /* { dg-do run { target fpic } } */
       2  /* { dg-options "-O2 -fpic" } */
       3  /* { dg-require-effective-target alloca } */
       4  
       5  extern void abort (void);
       6  extern void exit (int);
       7  
       8  void foo (char *x, const char *y, ...)
       9  {
      10  }
      11  
      12  double bar (const char *x, long y)
      13  {
      14    return 0.0;
      15  }
      16  
      17  typedef __SIZE_TYPE__ size_t;
      18  extern size_t strlen (const char *);
      19  
      20  double baz (const char *x)
      21  {
      22    if (x[0] != '\0')
      23      {
      24        char y[6 + strlen (x)];
      25        foo (y, "FOO", x);
      26        return bar (y, 0);
      27      }
      28  
      29    return (__extension__ ((union { unsigned __l __attribute__((__mode__(__SI__))); float __d; }) { __l: 0x3f800000UL }).__d);
      30  }
      31  
      32  int
      33  main ()
      34  {
      35    if (baz("") != 1.0)
      36      abort ();
      37    exit (0);
      38  }