diff options
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/20000113-1.c | 23 |
2 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 73fef10..393d7cd 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +Thu Jan 13 02:29:32 2000 Jeffrey A Law (law@cygnus.com) + + * gcc.c-torture/execute/20000113-1.c: New test. + Wed Jan 12 20:26:58 2000 Jeffrey A Law (law@cygnus.com) * gcc.c-torture/execute/20000112-1.c: New test. diff --git a/gcc/testsuite/gcc.c-torture/execute/20000113-1.c b/gcc/testsuite/gcc.c-torture/execute/20000113-1.c new file mode 100644 index 0000000..8b61dbb --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000113-1.c @@ -0,0 +1,23 @@ +struct x { + unsigned x1:1; + unsigned x2:2; + unsigned x3:3; +}; + +foobar (int x, int y, int z) +{ + struct x a = {x, y, z}; + struct x b = {x, y, z}; + struct x *c = &b; + + c->x3 += (a.x2 - a.x1) * c->x2; + if (a.x1 != 1 || c->x3 != 5) + abort (); + exit (0); +} + +main() +{ + foobar (1, 2, 3); +} + |