summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2018-10-28 15:57:17 +1030
committerAlan Modra <amodra@gmail.com>2018-10-28 16:05:51 +1030
commitb0d99ba9e9c7d7967b53e271e683b7563b710dae (patch)
tree99aab684461b0506e4e3179ed58de592d5c5de7b
parent9da2bd6ac9b1c15f6ba4f6e87fc8571aee8efa18 (diff)
downloadbinutils-gdb-b0d99ba9e9c7d7967b53e271e683b7563b710dae.tar.gz
PR23837, Segmentation fault in resolve_symbol_value
Local symbols don't have a sy_frag field. PR 23837 * config/tc-hppa.c: Don't include struc-symbol.h. (pa_build_unwind_subspace): Call get_symbol_frag rather than referencing sy_frag.
-rw-r--r--gas/ChangeLog7
-rw-r--r--gas/config/tc-hppa.c3
2 files changed, 8 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 759186b00cd..b1c67de928c 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,10 @@
+2018-10-28 Alan Modra <amodra@gmail.com>
+
+ PR 23837
+ * config/tc-hppa.c: Don't include struc-symbol.h.
+ (pa_build_unwind_subspace): Call get_symbol_frag rather than
+ referencing sy_frag.
+
2018-10-23 John Darrington <john@darrington.wattle.id.au>
* config/tc-s12z.c (md_apply_fix): Handle BFD_RELOC_16 for fixups
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index ccae68cb406..7ced5ee5d55 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -23,7 +23,6 @@
#include "as.h"
#include "safe-ctype.h"
-#include "struc-symbol.h"
#include "subsegs.h"
#include "dw2gencfi.h"
@@ -5991,7 +5990,7 @@ pa_build_unwind_subspace (struct call_info *call_info)
{
symbolP = symbol_new (name, now_seg,
S_GET_VALUE (call_info->start_symbol),
- call_info->start_symbol->sy_frag);
+ symbol_get_frag (call_info->start_symbol));
gas_assert (symbolP);
S_CLEAR_EXTERNAL (symbolP);
symbol_table_insert (symbolP);