summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.dg/debug/pr45849.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.dg/debug/pr45849.c')
-rw-r--r--gcc/testsuite/gcc.dg/debug/pr45849.c31
1 files changed, 31 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/debug/pr45849.c b/gcc/testsuite/gcc.dg/debug/pr45849.c
new file mode 100644
index 000000000..93279b708
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/debug/pr45849.c
@@ -0,0 +1,31 @@
+/* PR debug/45849 */
+/* { dg-do compile } */
+/* { dg-options "-g -Wno-uninitialized" } */
+
+extern void bar (void);
+
+void
+foo (long repllen, char *rp)
+{
+ char *matchend;
+ char *scan;
+ long len;
+ char *matchstart;
+ char *text;
+ char *t;
+
+ repllen--;
+
+ for (;;)
+ {
+ matchstart = t + rp[0];
+ matchend = rp;
+ len = matchstart - text + repllen * (matchend - matchstart);
+ while (len)
+ ;
+ for (scan = text; scan != rp; scan++)
+ bar ();
+ if (matchstart)
+ text = matchend;
+ }
+}