aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog2
-rw-r--r--ld/ldmain.c24
2 files changed, 20 insertions, 6 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index 4d3462a..f7be828 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,5 +1,7 @@
Mon Feb 6 12:17:24 1995 Ian Lance Taylor <ian@cygnus.com>
+ * ldmain.c (undefined_symbol): Handle section being NULL.
+
* ldctor.c (ldctor_build_sets): Handle bfd_link_hash_defweak.
* ldexp.c (fold_name): Likewise.
* ldlang.c (print_one_symbol): Likewise.
diff --git a/ld/ldmain.c b/ld/ldmain.c
index a9b836a..091f776 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
@@ -833,12 +833,24 @@ undefined_symbol (info, name, abfd, section, address)
error_name = buystring (name);
}
- if (error_count < MAX_ERRORS_IN_A_ROW)
- einfo ("%X%C: undefined reference to `%T'\n",
- abfd, section, address, name);
- else if (error_count == MAX_ERRORS_IN_A_ROW)
- einfo ("%D: more undefined references to `%T' follow\n",
- abfd, section, address, name);
+ if (section != NULL)
+ {
+ if (error_count < MAX_ERRORS_IN_A_ROW)
+ einfo ("%X%C: undefined reference to `%T'\n",
+ abfd, section, address, name);
+ else if (error_count == MAX_ERRORS_IN_A_ROW)
+ einfo ("%D: more undefined references to `%T' follow\n",
+ abfd, section, address, name);
+ }
+ else
+ {
+ if (error_count < MAX_ERRORS_IN_A_ROW)
+ einfo ("%X%B: undefined reference to `%T'\n",
+ abfd, name);
+ else if (error_count == MAX_ERRORS_IN_A_ROW)
+ einfo ("%B: more undefined references to `%T' follow\n",
+ abfd, name);
+ }
return true;
}