modernc.org/cc@v1.0.1/testdata/gcc-6.3.0/gcc/testsuite/gcc.c-torture/execute/921113-1.c (about)

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