OSDN Git Service

PR middle-end/35456
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.c-torture / execute / 921113-1.c
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