diff options
author | Alan Modra <amodra@gmail.com> | 2005-03-14 12:33:02 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2005-03-14 12:33:02 +0000 |
commit | 833abccb4d0b360bbe20f69a9e208b6b7f84b0e0 (patch) | |
tree | 37e50da607aeae7d9393812503decea5f93aa322 | |
parent | a03c8a3bd32f76a2d64b8a3d6db92eed235644ac (diff) | |
download | binutils-gdb-833abccb4d0b360bbe20f69a9e208b6b7f84b0e0.tar.gz |
* ldexp.c (exp_fold_tree): Ensure return value is initialized.
Tidy etree_assert case.
-rw-r--r-- | ld/ChangeLog | 5 | ||||
-rw-r--r-- | ld/ldexp.c | 15 |
2 files changed, 12 insertions, 8 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 9fb2dbbeb8c..ca4cc215db8 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,10 @@ 2005-03-14 Alan Modra <amodra@bigpond.net.au> + * ldexp.c (exp_fold_tree): Ensure return value is initialized. + Tidy etree_assert case. + +2005-03-14 Alan Modra <amodra@bigpond.net.au> + * po/tr.po: Commit new Turkish translation. 2005-03-07 Nick Clifton <nickc@redhat.com> diff --git a/ld/ldexp.c b/ld/ldexp.c index ec25557bafb..b194bec468c 100644 --- a/ld/ldexp.c +++ b/ld/ldexp.c @@ -699,7 +699,7 @@ exp_fold_tree (etree_type *tree, if (tree == NULL) { - result.valid_p = FALSE; + memset (&result, 0, sizeof (result)); return result; } @@ -711,7 +711,7 @@ exp_fold_tree (etree_type *tree, case etree_rel: if (allocation_done != lang_final_phase_enum) - result.valid_p = FALSE; + memset (&result, 0, sizeof (result)); else result = new_rel ((tree->rel.value + tree->rel.section->output_section->vma @@ -724,12 +724,8 @@ exp_fold_tree (etree_type *tree, result = exp_fold_tree (tree->assert_s.child, current_section, allocation_done, dot, dotp); - if (result.valid_p) - { - if (! result.value) - einfo ("%X%P: %s\n", tree->assert_s.message); - return result; - } + if (result.valid_p && !result.value) + einfo ("%X%P: %s\n", tree->assert_s.message); break; case etree_unary: @@ -787,6 +783,8 @@ exp_fold_tree (etree_type *tree, } } } + else + memset (&result, 0, sizeof (result)); } else { @@ -839,6 +837,7 @@ exp_fold_tree (etree_type *tree, default: FAIL (); + memset (&result, 0, sizeof (result)); break; } |