diff options
author | Doug Evans <xdje42@gmail.com> | 2015-09-18 21:43:38 -0700 |
---|---|---|
committer | Doug Evans <xdje42@gmail.com> | 2015-09-18 21:43:38 -0700 |
commit | 015d2e7e49056e0d5fea1c18bf8de9b1be7c096f (patch) | |
tree | 5e18796c5f9b2e007b0f0a5449f1fae6a1357625 /bfd | |
parent | d96c806b9210f2a9dc07f9ebfc811b3fc0c0f870 (diff) | |
download | gdb-015d2e7e49056e0d5fea1c18bf8de9b1be7c096f.zip gdb-015d2e7e49056e0d5fea1c18bf8de9b1be7c096f.tar.gz gdb-015d2e7e49056e0d5fea1c18bf8de9b1be7c096f.tar.bz2 |
default_read_var_value <LOC_UNRESOLVED>: Include minsym kind in error message.
bfd/ChangeLog:
* targets.c (enum bfd_flavour): Add comment.
(bfd_flavour_name): New function.
* bfd-in2.h: Regenerate.
gdb/ChangeLog:
* findvar.c (default_read_var_value) <LOC_UNRESOLVED>: Include the
kind of minimal symbol in the error message.
* objfiles.c (objfile_flavour_name): New function.
* objfiles.h (objfile_flavour_name): Declare.
gdb/testsuite/ChangeLog:
* gdb.dwarf2/dw2-bad-unresolved.c: New file.
* gdb.dwarf2/dw2-bad-unresolved.exp: New file.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/bfd-in2.h | 3 | ||||
-rw-r--r-- | bfd/targets.c | 48 |
3 files changed, 57 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 3e0c7b8..70d9952 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2015-09-18 Doug Evans <xdje42@gmail.com> + + * targets.c (enum bfd_flavour): Add comment. + (bfd_flavour_name): New function. + * bfd-in2.h: Regenerate. + 2015-09-18 Alan Modra <amodra@gmail.com> * elf64-ppc.h (struct ppc64_elf_params <tls_get_addr_opt>): Rename diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h index 51fa54f..f06d76e 100644 --- a/bfd/bfd-in2.h +++ b/bfd/bfd-in2.h @@ -6980,6 +6980,7 @@ bfd_boolean generic_core_file_matches_executable_p enum bfd_flavour { + /* N.B. Update bfd_flavour_name if you change this. */ bfd_target_unknown_flavour, bfd_target_aout_flavour, bfd_target_coff_flavour, @@ -7399,6 +7400,8 @@ const bfd_target *bfd_search_for_target (int (*search_func) (const bfd_target *, void *), void *); +const char *bfd_flavour_name (enum bfd_flavour flavour); + /* Extracted from format.c. */ bfd_boolean bfd_check_format (bfd *abfd, bfd_format format); diff --git a/bfd/targets.c b/bfd/targets.c index 1ada260..cc9d083 100644 --- a/bfd/targets.c +++ b/bfd/targets.c @@ -144,6 +144,7 @@ DESCRIPTION .enum bfd_flavour .{ +. {* N.B. Update bfd_flavour_name if you change this. *} . bfd_target_unknown_flavour, . bfd_target_aout_flavour, . bfd_target_coff_flavour, @@ -1829,3 +1830,50 @@ bfd_search_for_target (int (*search_func) (const bfd_target *, void *), return NULL; } + +/* +FUNCTION + bfd_flavour_name + +SYNOPSIS + const char *bfd_flavour_name (enum bfd_flavour flavour); + +DESCRIPTION + Return the string form of @var{flavour}. +*/ + +const char * +bfd_flavour_name (enum bfd_flavour flavour) +{ + switch (flavour) + { + case bfd_target_unknown_flavour: return "unknown file format"; + case bfd_target_aout_flavour: return "a.out"; + case bfd_target_coff_flavour: return "COFF"; + case bfd_target_ecoff_flavour: return "ECOFF"; + case bfd_target_xcoff_flavour: return "XCOFF"; + case bfd_target_elf_flavour: return "ELF"; + case bfd_target_ieee_flavour: return "IEEE"; + case bfd_target_nlm_flavour: return "NLM"; + case bfd_target_oasys_flavour: return "Oasys"; + case bfd_target_tekhex_flavour: return "Tekhex"; + case bfd_target_srec_flavour: return "Srec"; + case bfd_target_verilog_flavour: return "Verilog"; + case bfd_target_ihex_flavour: return "Ihex"; + case bfd_target_som_flavour: return "SOM"; + case bfd_target_os9k_flavour: return "OS9K"; + case bfd_target_versados_flavour: return "Versados"; + case bfd_target_msdos_flavour: return "MSDOS"; + case bfd_target_ovax_flavour: return "Ovax"; + case bfd_target_evax_flavour: return "Evax"; + case bfd_target_mmo_flavour: return "MMO"; + case bfd_target_mach_o_flavour: return "MACH_O"; + case bfd_target_pef_flavour: return "PEF"; + case bfd_target_pef_xlib_flavour: return "PEF_XLIB"; + case bfd_target_sym_flavour: return "SYM"; + /* There is no "default" case here so that -Wswitch (part of -Wall) + catches missing entries. */ + } + + abort (); +} |