diff options
author | Ian Lance Taylor <ian@airs.com> | 1995-10-06 16:09:24 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@airs.com> | 1995-10-06 16:09:24 +0000 |
commit | e7cac9dea9595a82aa344fd79c6f2b5c51eb413a (patch) | |
tree | e4e894c7fbde342054aa5d0e9f5a4c6b68c89fff /bfd/coffcode.h | |
parent | fd9609c3e882b77440e3dacd402874cb7a3a3522 (diff) | |
download | gdb-e7cac9dea9595a82aa344fd79c6f2b5c51eb413a.zip gdb-e7cac9dea9595a82aa344fd79c6f2b5c51eb413a.tar.gz gdb-e7cac9dea9595a82aa344fd79c6f2b5c51eb413a.tar.bz2 |
* coffcode.h (coff_slurp_symbol_table): Set C_HIDEXT symbols to be
BSF_LOCAL.
Diffstat (limited to 'bfd/coffcode.h')
-rw-r--r-- | bfd/coffcode.h | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/bfd/coffcode.h b/bfd/coffcode.h index 02971ce..2a0ec34 100644 --- a/bfd/coffcode.h +++ b/bfd/coffcode.h @@ -2311,27 +2311,29 @@ coff_slurp_symbol_table (abfd) } else { - /* - Base the value as an index from the base of the - section - */ + /* Base the value as an index from the base of the + section */ dst->symbol.flags = BSF_EXPORT | BSF_GLOBAL; - dst->symbol.value = src->u.syment.n_value - dst->symbol.section->vma; + dst->symbol.value = (src->u.syment.n_value + - dst->symbol.section->vma); if (ISFCN ((src->u.syment.n_type))) { - /* - A function ext does not go at the end of a file - */ + /* A function ext does not go at the end of a + file. */ dst->symbol.flags |= BSF_NOT_AT_END | BSF_FUNCTION; } } #ifdef RS6000COFF_C - /* If this symbol has a csect aux of type LD, the scnlen field - is actually the index of the containing csect symbol. We - need to pointerize it. */ + /* A C_HIDEXT symbol is not global. */ + if (src->u.syment.n_sclass == C_HIDEXT) + dst->symbol.flags = BSF_LOCAL; + + /* If this symbol has a csect aux of type LD, the scnlen + field is actually the index of the containing csect + symbol. We need to pointerize it. */ if (src->u.syment.n_numaux > 0) { combined_entry_type *aux; |