diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/20000412-6.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/20000412-6.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/20000412-6.c b/gcc/testsuite/gcc.c-torture/execute/20000412-6.c new file mode 100644 index 000000000..98e003051 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000412-6.c @@ -0,0 +1,22 @@ +unsigned bug (unsigned short value, unsigned short *buffer, + unsigned short *bufend); + +unsigned short buf[] = {1, 4, 16, 64, 256}; +int main() +{ + if (bug (512, buf, buf + 3) != 491) + abort (); + + exit (0); +} + +unsigned +bug (unsigned short value, unsigned short *buffer, unsigned short *bufend) +{ + unsigned short *tmp; + + for (tmp = buffer; tmp < bufend; tmp++) + value -= *tmp; + + return value; +} |