From e2ac373eef50c22dcc4063580b2c9ae0f6156418 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Thu, 12 Jul 2007 01:40:25 +0000 Subject: [PATCH] PR 4782 * ldlang.c (lang_size_sections_1 ): Only use expld.result when valid. --- ld/ChangeLog | 6 ++++++ ld/ldlang.c | 7 +++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index bf73bb4793..0d1bcc78b3 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,11 @@ 2007-07-12 Alan Modra + PR 4782 + * ldlang.c (lang_size_sections_1 ): Only + use expld.result when valid. + +2007-07-12 Alan Modra + * emultempl/spuelf.em (embedded_spu_file): Test for NULL path before calling base_name, not after. diff --git a/ld/ldlang.c b/ld/ldlang.c index e1c02cc441..56edee80a1 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -4242,13 +4242,12 @@ lang_size_sections_1 os->processed_vma = FALSE; exp_fold_tree (os->addr_tree, bfd_abs_section_ptr, &dot); - if (!expld.result.valid_p - && expld.phase != lang_mark_phase_enum) + if (expld.result.valid_p) + dot = expld.result.value + expld.result.section->vma; + else if (expld.phase != lang_mark_phase_enum) einfo (_("%F%S: non constant or forward reference" " address expression for section %s\n"), os->name); - - dot = expld.result.value + expld.result.section->vma; } if (os->bfd_section == NULL) -- 2.11.0