OSDN Git Service

PR c/17844
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / struct-ret-1.c
1 /* { dg-do run { target hppa*-*-* } } */
2 /* { dg-options { -O2 } { target hppa*-*-* } } */
3 extern void exit (int);
4 typedef struct {
5         int             x;
6         int             y;
7 }               point_t;
8
9 int main(int argc, char *argv[]);
10 int printPoints(point_t a, point_t b);
11 point_t toPoint(int x1, int y1);
12
13 int
14 main(int argc, char *argv[])
15 {
16
17         if (printPoints(toPoint(0, 0), toPoint(1000, 1000)) != 1)
18                 abort();
19         else
20                 exit(0);
21
22         return 0;
23 }
24
25 int
26 printPoints(point_t a, point_t b)
27 {
28         if (a.x != 0
29             || a.y != 0
30             || b.x != 1000
31             || b.y != 1000)
32                 return 0;
33         else
34                 return 1;
35 }
36
37 point_t
38 toPoint(int x1, int y1)
39 {
40         point_t         p;
41
42         p.x = x1;
43         p.y = y1;
44
45         return p;
46 }