diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2000-09-11 21:00:19 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@gcc.gnu.org> | 2000-09-11 21:00:19 +0000 |
commit | da88b352787b53926ba3038983289a59ddaea887 (patch) | |
tree | d53570dbea388988701a8badd790d7f31b962ce2 /gcc | |
parent | 2a1da89b745d35fa6d29c83dc237765eb5811009 (diff) | |
download | gcc-da88b352787b53926ba3038983289a59ddaea887.zip gcc-da88b352787b53926ba3038983289a59ddaea887.tar.gz gcc-da88b352787b53926ba3038983289a59ddaea887.tar.bz2 |
20000910-1.c: New test.
* gcc.c-torture/execute/20000910-1.c: New test.
* gcc.c-torture/execute/20000910-2.c: Likewise.
From-SVN: r36328
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/20000910-1.c | 27 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/20000910-2.c | 28 |
3 files changed, 60 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3fbaaa0..f9a0543 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2000-09-11 Alexandre Oliva <aoliva@redhat.com> + + * gcc.c-torture/execute/20000910-1.c: New test. + * gcc.c-torture/execute/20000910-2.c: Likewise. + 2000-09-11 Robert Lipe <robertl@sco.com> * gcc.dg/pragma-align.c: New test. diff --git a/gcc/testsuite/gcc.c-torture/execute/20000910-1.c b/gcc/testsuite/gcc.c-torture/execute/20000910-1.c new file mode 100644 index 0000000..0c3c602 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000910-1.c @@ -0,0 +1,27 @@ +/* Copyright (C) 2000 Free Software Foundation */ +/* by Alexandre Oliva <aoliva@redhat.com> */ + +#include <stdlib.h> + +void bar (int); +void foo (int *); + +int main () { + static int a[] = { 0, 1, 2 }; + int *i = &a[sizeof(a)/sizeof(*a)]; + + while (i-- > a) + foo (i); + + exit (0); +} + +void baz (int, int); + +void bar (int i) { baz (i, i); } +void foo (int *i) { bar (*i); } + +void baz (int i, int j) { + if (i != j) + abort (); +} diff --git a/gcc/testsuite/gcc.c-torture/execute/20000910-2.c b/gcc/testsuite/gcc.c-torture/execute/20000910-2.c new file mode 100644 index 0000000..0023d24 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/20000910-2.c @@ -0,0 +1,28 @@ +/* Copyright (C) 2000 Free Software Foundation */ +/* by Alexandre Oliva <aoliva@redhat.com> */ + +#include <stdlib.h> +#include <string.h> + +char *list[] = { "*", "e" }; + +static int bar (const char *fmt) { + return (strchr (fmt, '*') != 0); +} + +static void foo () { + int i; + for (i = 0; i < sizeof (list) / sizeof (*list); i++) { + const char *fmt = list[i]; + if (bar (fmt)) + continue; + if (i == 0) + abort (); + else + exit (0); + } +} + +int main () { + foo (); +} |