diff options
author | Ian Lance Taylor <ian@airs.com> | 2008-03-26 23:36:46 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 2008-03-26 23:36:46 +0000 |
commit | 04bf70729db030f7f0a4ec74699d1f052d13b06c (patch) | |
tree | ff902b1690d3b9b8004680946ef861b640235ebe /gold/object.cc | |
parent | 5bac7f0ac44be66d537d4a226ad654c625aefec8 (diff) | |
download | gdb-04bf70729db030f7f0a4ec74699d1f052d13b06c.zip gdb-04bf70729db030f7f0a4ec74699d1f052d13b06c.tar.gz gdb-04bf70729db030f7f0a4ec74699d1f052d13b06c.tar.bz2 |
PR gold/5986
Fix problems building gold with gcc 4.3.0.
* gold.h (TEMPLATE_ATTRIBUTE_PRINTF_4): Define.
(gold_error_at_location, gold_warning_at_location): Use it.
* configure.ac: Check whether we can compile and use a template
function with a printf attribute.
* x86_64.cc (Target_x86_64::do_code_fill): Swap out a 32-bit value
when jumping over bytes.
* object.cc: Instantiate Object::read_section_data.
* debug.h: Include <cstring>
* dwarf_reader.cc: Include <algorithm>
* main.cc: Include <cstring>.
* options.cc: Include <cstring>.
* output.cc: Include <cstring>.
* script.cc: Include <cstring>.
* script.h: Include <string>.
* symtab.cc: Include <cstring> and <algorithm>.
* target-select.cc: Include <cstring>.
* version.cc: Include <string>.
* testsuite/testmain.cc: Include <cstdlib>.
* configure, config.in: Rebuild.
Diffstat (limited to 'gold/object.cc')
-rw-r--r-- | gold/object.cc | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/gold/object.cc b/gold/object.cc index 6c81f23..378238d 100644 --- a/gold/object.cc +++ b/gold/object.cc @@ -1546,8 +1546,35 @@ make_elf_object(const std::string& name, Input_file* input_file, off_t offset, } } -// Instantiate the templates we need. We could use the configure -// script to restrict this to only the ones for implemented targets. +// Instantiate the templates we need. + +#ifdef HAVE_TARGET_32_LITTLE +template +void +Object::read_section_data<32, false>(elfcpp::Elf_file<32, false, Object>*, + Read_symbols_data*); +#endif + +#ifdef HAVE_TARGET_32_BIG +template +void +Object::read_section_data<32, true>(elfcpp::Elf_file<32, true, Object>*, + Read_symbols_data*); +#endif + +#ifdef HAVE_TARGET_64_LITTLE +template +void +Object::read_section_data<64, false>(elfcpp::Elf_file<64, false, Object>*, + Read_symbols_data*); +#endif + +#ifdef HAVE_TARGET_64_BIG +template +void +Object::read_section_data<64, true>(elfcpp::Elf_file<64, true, Object>*, + Read_symbols_data*); +#endif #ifdef HAVE_TARGET_32_LITTLE template |