diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/pr45570.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/pr45570.c | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr45570.c b/gcc/testsuite/gcc.dg/pr45570.c new file mode 100644 index 000000000..8a25951fc --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr45570.c @@ -0,0 +1,28 @@ +/* { dg-do compile { target powerpc*-*-* ia64-*-* i?86-*-* x86_64-*-* } } */ +/* { dg-options "-O3 -fselective-scheduling2 -fsel-sched-pipelining -fsel-sched-pipelining-outer-loops -ftracer" } */ +void +parser_get_next_char (char c, int qm, char *p) +{ + int quote_mode = 0; + for (; *p; p++) + { + if (qm) + { + if (quote_mode == 0 && *p == '"' && *(p - 1)) + { + quote_mode = 1; + continue; + } + if (quote_mode && *p == '"' && *(p - 1)) + quote_mode = 0; + } + if (quote_mode == 0 && *p == c && *(p - 1)) + break; + } +} + +void +parser_get_next_parameter (char *p) +{ + parser_get_next_char (':', 1, p); +} |