diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/20030414-1.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/20030414-1.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/20030414-1.c b/gcc/testsuite/gcc.dg/20030414-1.c new file mode 100644 index 000000000..9ba595318 --- /dev/null +++ b/gcc/testsuite/gcc.dg/20030414-1.c @@ -0,0 +1,39 @@ +/* PR target/10377 + Distilled by Hans-Peter Nilsson <hp@axis.com> from ncurses-5.3 infocmp.c. + Copyright (C) 2003 Free Software Foundation. */ + +/* { dg-do assemble } */ +/* { dg-options "-O2 -fPIC" { target *-*-*gnu* } } */ + +extern int f2 (char *, char *); +extern char *ss[]; +extern char *cc; +void +f1 (char *dd, char *bb) +{ + char *sp = bb + 1; + char *ap; + int i; + char *ee = 0; + char *cp; + + for (i = 0, cp = cc; i < 42; i++) + if (cp) + { + if (f2 (dd, "xx") || f2 (ss[i], "xx") || f2 (ss[i], "yy")) + if (bb < cp) + continue; + ee = ss[i]; + break; + } + + if (!ee) + for (ap = cc; *ap; ap++) + if (f2(ap, sp)) + { + ee = ap; + break; + } + + cc = ee; +} |