(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.c-torture/
execute/
921113-1.c
       1  /* { dg-require-stack-size "128 * 128 * 4 + 1024" } */
       2  
       3  typedef struct {
       4    float wsx;
       5  } struct_list;
       6  
       7  typedef struct_list *list_t;
       8  
       9  typedef struct {
      10    float x, y;
      11  } vector_t;
      12  
      13  w(float x, float y) {}
      14  
      15  f1(float x, float y)
      16  {
      17    if (x != 0 || y != 0)
      18      abort();
      19  }
      20  f2(float x, float y)
      21  {
      22    if (x != 1 || y != 1)
      23      abort();
      24  }
      25  
      26  gitter(int count, vector_t pos[], list_t list, int *nww, vector_t limit[2], float r)
      27  {
      28    float d;
      29    int gitt[128][128];
      30  
      31    f1(limit[0].x, limit[0].y);
      32    f2(limit[1].x, limit[1].y);
      33  
      34    *nww = 0;
      35  
      36    d = pos[0].x;
      37    if (d <= 0.)
      38      {
      39        w(d, r);
      40        if (d <= r * 0.5)
      41  	{
      42  	  w(d, r);
      43  	  list[0].wsx = 1;
      44  	}
      45      }
      46  }
      47  
      48  vector_t pos[1] = {{0., 0.}};
      49  vector_t limit[2] = {{0.,0.},{1.,1.}};
      50  
      51  main()
      52  {
      53    int nww;
      54    struct_list list;
      55  
      56    gitter(1, pos, &list, &nww, limit, 1.);
      57    exit(0);
      58  }
      59