diff options
Diffstat (limited to 'gcc/testsuite/gcc.dg/pr121468.c')
-rw-r--r-- | gcc/testsuite/gcc.dg/pr121468.c | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.dg/pr121468.c b/gcc/testsuite/gcc.dg/pr121468.c new file mode 100644 index 0000000..07df274 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr121468.c @@ -0,0 +1,30 @@ +/* { dg-do compile } */ +/* { dg-options "-Os" } */ +int e, f, n; +static int a () { return e; } +void b () { while (a()); } +static int d () { return e; } +static void g (int h) { + if (e) + c: + if (d()) + goto i; + do { + if (f) + goto c; + goto k; + i: + h = 2147483647; + k: + e = 2147483646; + e = 6 + e; + do { + b (); + } while (1784828957 / f + e + (808 + h) > 0); + } while (1 % h); +} +void m () { g (-2); } +int main () { + if (n) + g (-1); +} |