From fa574e51547c2cfd2dcbbfb47252caac60bc7171 Mon Sep 17 00:00:00 2001 From: Alexandre Oliva Date: Thu, 5 Apr 2007 21:10:26 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 5 +++++ gcc/tree-sra.c | 6 +++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 330c180590a..4f5f8f5df4a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2007-04-05 Alexandre Oliva + + * tree-sra.c (try_instantiate_multiple_fields): Needlessly + initialize align to silence bogus warning. + 2007-04-05 Alexandre Oliva PR middle-end/22156 diff --git a/gcc/tree-sra.c b/gcc/tree-sra.c index a73f22d69fc..0f76bb5831d 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)) {