* ldlang.c (lang_size_sections_1 <output_section_statement>): Only
	use expld.result when valid.
This commit is contained in:
Alan Modra 2007-07-12 01:40:25 +00:00
parent 2d9d480e3b
commit 3bf9618b71
2 changed files with 9 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2007-07-12 Alan Modra <amodra@bigpond.net.au>
PR 4782
* ldlang.c (lang_size_sections_1 <output_section_statement>): Only
use expld.result when valid.
2007-07-12 Alan Modra <amodra@bigpond.net.au>
* emultempl/spuelf.em (embedded_spu_file): Test for NULL path

View File

@ -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)