diff options
author | Dave Anglin <dave.anglin@nrc.ca> | 2005-11-20 19:21:06 +0000 |
---|---|---|
committer | Dave Anglin <dave.anglin@nrc.ca> | 2005-11-20 19:21:06 +0000 |
commit | f29ba312286c54e1b013a5adf42c58fd4642bf56 (patch) | |
tree | 14573a0f3242848ba4cd3b62d6cf6d64751217ee /bfd/som.c | |
parent | 8b9b39f44acae15c55a487460d779a7068c27bb4 (diff) | |
download | gdb-f29ba312286c54e1b013a5adf42c58fd4642bf56.zip gdb-f29ba312286c54e1b013a5adf42c58fd4642bf56.tar.gz gdb-f29ba312286c54e1b013a5adf42c58fd4642bf56.tar.bz2 |
* som.c (som_decode_symclass): Decode BSF_WEAK symbols in the same
manner as bfd_decode_symclass.
Diffstat (limited to 'bfd/som.c')
-rw-r--r-- | bfd/som.c | 23 |
1 files changed, 21 insertions, 2 deletions
@@ -5355,11 +5355,30 @@ som_decode_symclass (asymbol *symbol) if (bfd_is_com_section (symbol->section)) return 'C'; if (bfd_is_und_section (symbol->section)) - return 'U'; + { + if (symbol->flags & BSF_WEAK) + { + /* If weak, determine if it's specifically an object + or non-object weak. */ + if (symbol->flags & BSF_OBJECT) + return 'v'; + else + return 'w'; + } + else + return 'U'; + } if (bfd_is_ind_section (symbol->section)) return 'I'; if (symbol->flags & BSF_WEAK) - return 'W'; + { + /* If weak, determine if it's specifically an object + or non-object weak. */ + if (symbol->flags & BSF_OBJECT) + return 'V'; + else + return 'W'; + } if (!(symbol->flags & (BSF_GLOBAL | BSF_LOCAL))) return '?'; |