diff options
Diffstat (limited to 'bfd/mach-o.c')
-rw-r--r-- | bfd/mach-o.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/bfd/mach-o.c b/bfd/mach-o.c index 641fd9bd443..766fb3d76d9 100644 --- a/bfd/mach-o.c +++ b/bfd/mach-o.c @@ -1480,8 +1480,13 @@ bfd_mach_o_make_bfd_section (bfd *abfd, bfd_mach_o_section *section, if (sname == NULL) return NULL; - if (section->flags & BFD_MACH_O_S_ATTR_DEBUG) - flags = SEC_HAS_CONTENTS | SEC_DEBUGGING; + if ((section->flags & BFD_MACH_O_S_ATTR_DEBUG) + || !strcmp (section->segname, "__DWARF")) + { + /* Force flags for dwarf sections. This looks weird but dsym files + have no flags for them and this is important for gdb. */ + flags = SEC_HAS_CONTENTS | SEC_DEBUGGING; + } else { flags = SEC_ALLOC; |