From: Ian Lance Taylor Date: Fri, 9 Oct 2009 23:05:21 +0000 (+0000) Subject: * dwarf_reader.cc (Sized_dwarf_line_info::Sized_dwarf_line_info): X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=75aea3d03d18b74edb7290a3af15d937fe79f6d4;p=binutils-gdb.git * dwarf_reader.cc (Sized_dwarf_line_info::Sized_dwarf_line_info): Change read_shndx type to unsigned int. (Sized_dwarf_line_info::read_lines): Change shndx type to unsigned int. (Sized_dwarf_line_info::read_line_mappings): Likewise. * dwarf_reader.h (Sized_dwarf_line_info::Sized_dwarf_line_info): Change read_shndx type to unsigned int. (Sized_dwarf_line_info::read_lines): Change shndx type to unsigned int. (Sized_dwarf_line_info::read_line_mappings): Likewise. * layout.cc (Layout::create_symtab_sections): Cast the result of local_symcount * symsize to off_t in the gold_assert. --- diff --git a/gold/ChangeLog b/gold/ChangeLog index a8939ee0f3e..05320fa9152 100644 --- a/gold/ChangeLog +++ b/gold/ChangeLog @@ -1,3 +1,18 @@ +2009-10-09 Andrew Pinski + + * dwarf_reader.cc (Sized_dwarf_line_info::Sized_dwarf_line_info): + Change read_shndx type to unsigned int. + (Sized_dwarf_line_info::read_lines): Change shndx type to unsigned + int. + (Sized_dwarf_line_info::read_line_mappings): Likewise. + * dwarf_reader.h (Sized_dwarf_line_info::Sized_dwarf_line_info): + Change read_shndx type to unsigned int. + (Sized_dwarf_line_info::read_lines): Change shndx type to unsigned + int. + (Sized_dwarf_line_info::read_line_mappings): Likewise. + * layout.cc (Layout::create_symtab_sections): Cast the result of + local_symcount * symsize to off_t in the gold_assert. + 2009-10-09 Viktor Kutuzov * arm.cc (Target_arm::relocate::reloc_is_non_pic): Return true for diff --git a/gold/dwarf_reader.cc b/gold/dwarf_reader.cc index 3d0f65a4b5a..d142586a607 100644 --- a/gold/dwarf_reader.cc +++ b/gold/dwarf_reader.cc @@ -1,6 +1,6 @@ // dwarf_reader.cc -- parse dwarf2/3 debug information -// Copyright 2007, 2008 Free Software Foundation, Inc. +// Copyright 2007, 2008, 2009 Free Software Foundation, Inc. // Written by Ian Lance Taylor . // This file is part of gold. @@ -129,7 +129,7 @@ ResetLineStateMachine(struct LineStateMachine* lsm, bool default_is_stmt) template Sized_dwarf_line_info::Sized_dwarf_line_info(Object* object, - off_t read_shndx) + unsigned int read_shndx) : data_valid_(false), buffer_(NULL), symtab_buffer_(NULL), directories_(), files_(), current_header_index_(-1) { @@ -508,7 +508,7 @@ Sized_dwarf_line_info::process_one_opcode( template unsigned const char* Sized_dwarf_line_info::read_lines(unsigned const char* lineptr, - off_t shndx) + unsigned int shndx) { struct LineStateMachine lsm; @@ -595,7 +595,7 @@ Sized_dwarf_line_info::read_relocs(Object* object) template void Sized_dwarf_line_info::read_line_mappings(Object* object, - off_t shndx) + unsigned int shndx) { gold_assert(this->data_valid_ == true); diff --git a/gold/dwarf_reader.h b/gold/dwarf_reader.h index c9d760ce53f..c18ed8951b0 100644 --- a/gold/dwarf_reader.h +++ b/gold/dwarf_reader.h @@ -1,6 +1,6 @@ // dwarf_reader.h -- parse dwarf2/3 debug information for gold -*- C++ -*- -// Copyright 2007, 2008 Free Software Foundation, Inc. +// Copyright 2007, 2008, 2009 Free Software Foundation, Inc. // Written by Ian Lance Taylor . // This file is part of gold. @@ -105,7 +105,7 @@ class Sized_dwarf_line_info : public Dwarf_line_info // Initializes a .debug_line reader for a given object file. // If SHNDX is specified and non-negative, only read the debug // information that pertains to the specified section. - Sized_dwarf_line_info(Object* object, off_t read_shndx = -1U); + Sized_dwarf_line_info(Object* object, unsigned int read_shndx = -1U); private: std::string @@ -115,7 +115,7 @@ class Sized_dwarf_line_info : public Dwarf_line_info // If SHNDX is non-negative, only store debug information that // pertains to the specified section. void - read_line_mappings(Object*, off_t shndx); + read_line_mappings(Object*, unsigned int shndx); // Reads the relocation section associated with .debug_line and // stores relocation information in reloc_map_. @@ -140,7 +140,7 @@ class Sized_dwarf_line_info : public Dwarf_line_info // discard all line information that doesn't pertain to the given // section. const unsigned char* - read_lines(const unsigned char* lineptr, off_t shndx); + read_lines(const unsigned char* lineptr, unsigned int shndx); // Process a single line info opcode at START using the state // machine at LSM. Return true if we should define a line using the diff --git a/gold/layout.cc b/gold/layout.cc index 1b836de5fda..e7d63777f89 100644 --- a/gold/layout.cc +++ b/gold/layout.cc @@ -2542,7 +2542,7 @@ Layout::create_symtab_sections(const Input_objects* input_objects, } unsigned int local_symcount = local_symbol_index; - gold_assert(local_symcount * symsize == off - startoff); + gold_assert(static_cast(local_symcount * symsize) == off - startoff); off_t dynoff; size_t dyn_global_index;