diff options
author | Alan Modra <amodra@gmail.com> | 2010-05-14 03:15:20 +0000 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2010-05-14 03:15:20 +0000 |
commit | e092cb30d23375162df46825e5b5bc99a339245b (patch) | |
tree | a4808ab88f40435294c6f5580decd4f3966398db /ld | |
parent | 6595d32bb250ef0d53a93c91774a284d04988f7e (diff) | |
download | gdb-e092cb30d23375162df46825e5b5bc99a339245b.zip gdb-e092cb30d23375162df46825e5b5bc99a339245b.tar.gz gdb-e092cb30d23375162df46825e5b5bc99a339245b.tar.bz2 |
PR ld/11583
* ldexp.c (exp_fold_tree_1): If assignment source expression is
invalid, make the destination symbol undefined.
Diffstat (limited to 'ld')
-rw-r--r-- | ld/ChangeLog | 6 | ||||
-rw-r--r-- | ld/ldexp.c | 8 |
2 files changed, 14 insertions, 0 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 7fa12d7..ca76b05 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,9 @@ +2010-05-14 Alan Modra <amodra@gmail.com> + + PR ld/11583 + * ldexp.c (exp_fold_tree_1): If assignment source expression is + invalid, make the destination symbol undefined. + 2010-05-11 Kai Tietz <kai.tietz@onevision.com> * emultempl/pe.em (gld_${EMULATION_NAME}_before_parse): @@ -830,6 +830,14 @@ exp_fold_tree_1 (etree_type *tree) hsrc); } } + else if (expld.phase == lang_final_phase_enum) + { + h = bfd_link_hash_lookup (link_info.hash, tree->assign.dst, + FALSE, FALSE, TRUE); + if (h != NULL + && h->type == bfd_link_hash_new) + h->type = bfd_link_hash_undefined; + } } break; |