diff options
author | Alexandre Oliva <aoliva@redhat.com> | 2007-04-05 21:10:26 +0000 |
---|---|---|
committer | Alexandre Oliva <aoliva@gcc.gnu.org> | 2007-04-05 21:10:26 +0000 |
commit | fa574e51547c2cfd2dcbbfb47252caac60bc7171 (patch) | |
tree | 2b741470b3934fa906d399594e5383a991d80b1a | |
parent | dc808df68ad8864d5d9e9ff7df501d8277e6da8b (diff) | |
download | gcc-fa574e51547c2cfd2dcbbfb47252caac60bc7171.zip gcc-fa574e51547c2cfd2dcbbfb47252caac60bc7171.tar.gz gcc-fa574e51547c2cfd2dcbbfb47252caac60bc7171.tar.bz2 |
tree-sra.c (try_instantiate_multiple_fields): Needlessly initialize align to silence bogus warning.
* tree-sra.c (try_instantiate_multiple_fields): Needlessly
initialize align to silence bogus warning.
From-SVN: r123526
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tree-sra.c | 6 |
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 330c180..4f5f8f5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 2007-04-05 Alexandre Oliva <aoliva@redhat.com> + * tree-sra.c (try_instantiate_multiple_fields): Needlessly + initialize align to silence bogus warning. + +2007-04-05 Alexandre Oliva <aoliva@redhat.com> + PR middle-end/22156 * tree-sra.c (struct sra_elt): Add in_bitfld_block. Remove all_no_warning. diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index a73f22d..0f76bb5 100644 --- a/gcc/tree-sra.c +++ b/gcc/tree-sra.c @@ -1431,7 +1431,11 @@ try_instantiate_multiple_fields (struct sra_elt *elt, tree f) return f; /* Taking the alignment of elt->element is not enough, since it - might be just an array index or some such. */ + might be just an array index or some such. We shouldn't need to + initialize align here, but our optimizers don't always realize + that, if we leave the loop without initializing align, we'll fail + the assertion right after the loop. */ + align = (unsigned HOST_WIDE_INT)-1; for (block = elt; block; block = block->parent) if (DECL_P (block->element)) { |