diff options
author | Steve Chamberlain <sac@cygnus> | 1992-02-27 19:22:41 +0000 |
---|---|---|
committer | Steve Chamberlain <sac@cygnus> | 1992-02-27 19:22:41 +0000 |
commit | e7b4046cbfb5d78d6e41864da763c8ffaf09f23e (patch) | |
tree | b82e328ab0a7c79ab11d8ef5930084f53006cb17 | |
parent | 3e6e09c068dfd31facc4a9f964dfa76f9ba9e3cd (diff) | |
download | ppe42-binutils-e7b4046cbfb5d78d6e41864da763c8ffaf09f23e.tar.gz ppe42-binutils-e7b4046cbfb5d78d6e41864da763c8ffaf09f23e.zip |
Don't core dump if no output section available for a symbol
-rw-r--r-- | bfd/ChangeLog | 3 | ||||
-rw-r--r-- | bfd/aoutx.h | 15 |
2 files changed, 15 insertions, 3 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index d3e36e7735..e8f1935b5d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -2,7 +2,8 @@ Thu Feb 27 09:24:56 1992 Steve Chamberlain (sac at thepub.cygnus.com) * aoutx.h (translate_from_native_sym_flags): when creating an alias symbol, fill in the section as undefined, rather than - leaving it blank + leaving it blank. If an output section can't be found for a + symbol, then don't core dump. Wed Feb 26 19:40:59 1992 Steve Chamberlain (sac at thepub.cygnus.com) diff --git a/bfd/aoutx.h b/bfd/aoutx.h index 4fc8cd719a..95c1a9278b 100644 --- a/bfd/aoutx.h +++ b/bfd/aoutx.h @@ -951,8 +951,19 @@ DEFUN(translate_to_native_sym_flags,(sym_pointer, cache_ptr, abfd), sym_pointer->e_type[0] = (N_UNDF | N_EXT); } else { - bfd_error_vector.nonrepresentable_section(abfd, - bfd_get_output_section(cache_ptr)->name); + if (cache_ptr->section->output_section) + { + + bfd_error_vector.nonrepresentable_section(abfd, + bfd_get_output_section(cache_ptr)->name); + } + else + { + bfd_error_vector.nonrepresentable_section(abfd, + cache_ptr->section->name); + + } + } /* Turn the symbol from section relative to absolute again */ |