gold: Move sym declaration just before use
Move sym declaration just before use to avoid -Wmaybe-uninitialized warning from GCC 11. PR gold/27097 * incremental.cc (Sized_relobj_incr::do_add_symbols): Move sym declaration just before use. (Sized_incr_dynobj::do_add_symbols): Likewise. * plugin.cc (Sized_pluginobj::do_add_symbols): Likewise.
This commit is contained in:
parent
60108e47b5
commit
97aac4ec32
@ -1,3 +1,11 @@
|
||||
2020-12-19 H.J. Lu <hjl.tools@gmail.com>
|
||||
|
||||
PR gold/27097
|
||||
* incremental.cc (Sized_relobj_incr::do_add_symbols): Move sym
|
||||
declaration just before use.
|
||||
(Sized_incr_dynobj::do_add_symbols): Likewise.
|
||||
* plugin.cc (Sized_pluginobj::do_add_symbols): Likewise.
|
||||
|
||||
2020-12-15 Cary Coutant <ccoutant@gmail.com>
|
||||
|
||||
* dwp.cc (class Dwo_file): Use new Ehdr::get_ei_osabi and
|
||||
|
@ -2129,7 +2129,6 @@ Sized_relobj_incr<size, big_endian>::do_add_symbols(
|
||||
{
|
||||
const int sym_size = elfcpp::Elf_sizes<size>::sym_size;
|
||||
unsigned char symbuf[sym_size];
|
||||
elfcpp::Sym<size, big_endian> sym(symbuf);
|
||||
elfcpp::Sym_write<size, big_endian> osym(symbuf);
|
||||
|
||||
typedef typename elfcpp::Elf_types<size>::Elf_WXword Elf_size_type;
|
||||
@ -2196,6 +2195,7 @@ Sized_relobj_incr<size, big_endian>::do_add_symbols(
|
||||
osym.put_st_other(gsym.get_st_other());
|
||||
osym.put_st_shndx(shndx);
|
||||
|
||||
elfcpp::Sym<size, big_endian> sym(symbuf);
|
||||
Symbol* res = symtab->add_from_incrobj(this, name, NULL, &sym);
|
||||
|
||||
if (shndx != elfcpp::SHN_UNDEF)
|
||||
@ -2730,7 +2730,6 @@ Sized_incr_dynobj<size, big_endian>::do_add_symbols(
|
||||
{
|
||||
const int sym_size = elfcpp::Elf_sizes<size>::sym_size;
|
||||
unsigned char symbuf[sym_size];
|
||||
elfcpp::Sym<size, big_endian> sym(symbuf);
|
||||
elfcpp::Sym_write<size, big_endian> osym(symbuf);
|
||||
|
||||
unsigned int nsyms = this->input_reader_.get_global_symbol_count();
|
||||
@ -2795,6 +2794,7 @@ Sized_incr_dynobj<size, big_endian>::do_add_symbols(
|
||||
osym.put_st_other(gsym.get_st_other());
|
||||
osym.put_st_shndx(shndx);
|
||||
|
||||
elfcpp::Sym<size, big_endian> sym(symbuf);
|
||||
Sized_symbol<size>* res =
|
||||
symtab->add_from_incrobj<size, big_endian>(this, name, NULL, &sym);
|
||||
this->symbols_[i] = res;
|
||||
|
@ -1397,7 +1397,6 @@ Sized_pluginobj<size, big_endian>::do_add_symbols(Symbol_table* symtab,
|
||||
{
|
||||
const int sym_size = elfcpp::Elf_sizes<size>::sym_size;
|
||||
unsigned char symbuf[sym_size];
|
||||
elfcpp::Sym<size, big_endian> sym(symbuf);
|
||||
elfcpp::Sym_write<size, big_endian> osym(symbuf);
|
||||
|
||||
Plugin_recorder* recorder = parameters->options().plugins()->recorder();
|
||||
@ -1480,6 +1479,7 @@ Sized_pluginobj<size, big_endian>::do_add_symbols(Symbol_table* symtab,
|
||||
osym.put_st_other(vis, 0);
|
||||
osym.put_st_shndx(shndx);
|
||||
|
||||
elfcpp::Sym<size, big_endian> sym(symbuf);
|
||||
this->symbols_[i] =
|
||||
symtab->add_from_pluginobj<size, big_endian>(this, name, ver, &sym);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user