diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6fed580e976..be6ce31bcfb 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2000-08-09 Alexandre Oliva + + * gcc.c-torture/execute/20000808-1.c: New test. + 2000-08-09 Joseph S. Myers * gcc.dg/c90-const-expr-1.c: New test. diff --git a/gcc/testsuite/gcc.c-torture/execute/20000808-1.c b/gcc/testsuite/gcc.c-torture/execute/20000808-1.c new file mode 100644 index 00000000000..5c66fb9452d --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000808-1.c @@ -0,0 +1,56 @@ +typedef struct { + long int p_x, p_y; +} Point; + +void +bar () +{ +} + +void +f (p0, p1, p2, p3, p4, p5) + Point p0, p1, p2, p3, p4, p5; +{ + if (p0.p_x != 0 || p0.p_y != 1 + || p1.p_x != -1 || p1.p_y != 0 + || p2.p_x != 1 || p2.p_y != -1 + || p3.p_x != -1 || p3.p_y != 1 + || p4.p_x != 0 || p4.p_y != -1 + || p5.p_x != 1 || p5.p_y != 0) + abort (); +} + +void +foo () +{ + Point p0, p1, p2, p3, p4, p5; + + bar(); + + p0.p_x = 0; + p0.p_y = 1; + + p1.p_x = -1; + p1.p_y = 0; + + p2.p_x = 1; + p2.p_y = -1; + + p3.p_x = -1; + p3.p_y = 1; + + p4.p_x = 0; + p4.p_y = -1; + + p5.p_x = 1; + p5.p_y = 0; + + f (p0, p1, p2, p3, p4, p5); +} + +int +main() +{ + foo(); + exit(); +}