1/* Distilled from optimization/863.  */
2
3extern void abort (void);
4extern void exit (int);
5extern void ok (int);
6
7typedef struct
8{
9  int x, y, z;
10} Data;
11
12void find (Data *first, Data *last)
13{
14  int i;
15  for (i = (last - first) >> 2; i > 0; --i)
16    ok(i);
17  abort ();
18}
19
20void ok(int i)
21{
22  if (i != 1)
23    abort ();
24  exit (0);
25}
26
27int
28main ()
29{
30  Data DataList[4];
31  find (DataList + 0, DataList + 4);
32}
33