aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/20000706-2.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.9/gcc/testsuite/gcc.c-torture/execute/20000706-2.c')
-rw-r--r--gcc-4.9/gcc/testsuite/gcc.c-torture/execute/20000706-2.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/20000706-2.c b/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/20000706-2.c
new file mode 100644
index 000000000..faf213711
--- /dev/null
+++ b/gcc-4.9/gcc/testsuite/gcc.c-torture/execute/20000706-2.c
@@ -0,0 +1,31 @@
+extern void abort(void);
+extern void exit(int);
+
+struct baz {
+ int a, b, c, d, e;
+};
+
+void bar(struct baz *x, int f, int g, int h, int i, int j)
+{
+ if (x->a != 1 || x->b != 2 || x->c != 3 || x->d != 4 || x->e != 5 ||
+ f != 6 || g != 7 || h != 8 || i != 9 || j != 10)
+ abort();
+}
+
+void foo(char *z, struct baz x, char *y)
+{
+ bar(&x,6,7,8,9,10);
+}
+
+int main()
+{
+ struct baz x;
+
+ x.a = 1;
+ x.b = 2;
+ x.c = 3;
+ x.d = 4;
+ x.e = 5;
+ foo((char *)0,x,(char *)0);
+ exit(0);
+}