From 9177756dc9cdd52efda5291e2d58788ff7f8a842 Mon Sep 17 00:00:00 2001 From: Doug Kwan Date: Mon, 8 Mar 2010 22:15:16 +0000 Subject: [PATCH] 2010-03-08 Doug Kwan * gold/arm.cc (Arm_exidx_fixup::update_offset_map): Fix build breakage due to a conversion warning. (Arm_relobj::update_output_local_symbol_count): Check for local symbol with unset output index. --- gold/ChangeLog | 7 +++++++ gold/arm.cc | 9 +++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/gold/ChangeLog b/gold/ChangeLog index 1ae668b59bc..1bc64e86c90 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,10 @@ +2010-03-08 Doug Kwan + + * gold/arm.cc (Arm_exidx_fixup::update_offset_map): Fix build breakage + due to a conversion warning. + (Arm_relobj::update_output_local_symbol_count): Check for local + symbol with unset output index. + 2010-03-05 Ian Lance Taylor * options.h (class General_options): Add --spare-dynamic-tags. diff --git a/gold/arm.cc b/gold/arm.cc index c141bc010f9..e331fd3462a 100644 --- a/gold/arm.cc +++ b/gold/arm.cc @@ -5194,9 +5194,10 @@ Arm_exidx_fixup::update_offset_map( { if (this->section_offset_map_ == NULL) this->section_offset_map_ = new Arm_exidx_section_offset_map(); - section_offset_type output_offset = (delete_entry - ? -1 - : input_offset - deleted_bytes); + section_offset_type output_offset = + (delete_entry + ? Arm_exidx_input_section::invalid_offset + : input_offset - deleted_bytes); (*this->section_offset_map_)[input_offset] = output_offset; } @@ -6506,7 +6507,7 @@ Arm_relobj::update_output_local_symbol_count() Symbol_value<32>& lv((*this->local_values())[i]); // This local symbol was already discarded by do_count_local_symbols. - if (!lv.is_output_symtab_index_set()) + if (lv.is_output_symtab_index_set() && !lv.has_output_symtab_entry()) continue; bool is_ordinary; -- 2.30.2