diff options
author | Jakub Jelinek <jakub@redhat.com> | 2014-02-04 01:46:42 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2014-02-04 01:46:42 +0100 |
commit | 4b076d8a4d638ded2d71160f88faba811161b378 (patch) | |
tree | 48b97686875fbefc38ce6d96df76c00672102443 | |
parent | c7793f06fb6402bf9997b3056c31d4ffa3a76106 (diff) | |
download | gcc-4b076d8a4d638ded2d71160f88faba811161b378.zip gcc-4b076d8a4d638ded2d71160f88faba811161b378.tar.gz gcc-4b076d8a4d638ded2d71160f88faba811161b378.tar.bz2 |
re PR tree-optimization/59924 (uninit memory hog)
PR tree-optimization/59924
* gcc.dg/pr59924.c: New test.
From-SVN: r207446
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/pr59924.c | 27 |
2 files changed, 32 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index e14976b..9465477 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2014-02-04 Jakub Jelinek <jakub@redhat.com> + + PR tree-optimization/59924 + * gcc.dg/pr59924.c: New test. + 2014-02-03 Jan Hubicka <hubicka@ucw.cz> PR ipa/59831 diff --git a/gcc/testsuite/gcc.dg/pr59924.c b/gcc/testsuite/gcc.dg/pr59924.c new file mode 100644 index 0000000..1d8d52f --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr59924.c @@ -0,0 +1,27 @@ +/* PR tree-optimization/59924 */ +/* { dg-do compile } */ +/* { dg-options "-O1 -Wall" } */ + +struct S { struct T *a; double b; struct S *c; }; +struct T { struct S *d; }; +extern void bar (double); + +void +foo (struct S * x, int y, int z, int w) +{ + int e; + struct S *f; + for (f = x->a->d; f; f = f->c) + { + if (5 < w) + { + e = -w; + z = w; + } + } + if (y != 0 || z != 0) + { + double g = x->b + (double) e * (double) y; /* { dg-warning "may be used uninitialized in this function" } */ + bar (g * g); + } +} |