* elflink.h (elf_bfd_final_link): Don't crash on SHN_UNDEF local
[binutils-gdb.git] / bfd / elflink.h
index 47927d3830e46e6468cc415b1c5fe573b8415b8b..76dbb195b5184d6885dfbe2084b47441d684d9aa 100644 (file)
@@ -1,5 +1,5 @@
 /* ELF linker support.
-   Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001
+   Copyright 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002
    Free Software Foundation, Inc.
 
 This file is part of BFD, the Binary File Descriptor library.
@@ -5375,8 +5375,9 @@ elf_bfd_final_link (abfd, info)
                  the original st_name with the dynstr_index.  */
               sym = e->isym;
 
-             if (e->isym.st_shndx < SHN_LORESERVE
-                 || e->isym.st_shndx > SHN_HIRESERVE)
+             if (e->isym.st_shndx != SHN_UNDEF
+                  && (e->isym.st_shndx < SHN_LORESERVE
+                      || e->isym.st_shndx > SHN_HIRESERVE))
                {
                  s = bfd_section_from_elf_index (e->input_bfd,
                                                  e->isym.st_shndx);