summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2000-07-18 00:15:46 +0000
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>2000-07-18 00:15:46 +0000
commit7234ad38d71dec993257ac7288fe2754eff75504 (patch)
tree1452584f9c8c3c18c1b05f87c3d53a46c890cb34 /gcc
parent3cf8306d2c3e335e220765e9bc53121e7ac867fd (diff)
downloadgcc-7234ad38d71dec993257ac7288fe2754eff75504.tar.gz
* tlink.c (scan_linker_output): Tweak for output of AIX ld.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35108 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/tlink.c16
2 files changed, 19 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 1cca26365fb..4d8f88a2509 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+2000-07-17 Geoffrey Keating <geoffk@cygnus.com>
+
+ * tlink.c (scan_linker_output): Tweak for output of AIX ld.
+
2000-07-17 Richard Henderson <rth@cygnus.com>
* config/ia64/ia64.md (movdi): Split out load address code.
diff --git a/gcc/tlink.c b/gcc/tlink.c
index bfa637e906b..e96f6dc6ae9 100644
--- a/gcc/tlink.c
+++ b/gcc/tlink.c
@@ -1,7 +1,7 @@
/* Scan linker error messages for missing template instantiations and provide
them.
- Copyright (C) 1995, 1998, 1999 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1998, 1999, 2000 Free Software Foundation, Inc.
Contributed by Jason Merrill (jason@cygnus.com).
This file is part of GNU CC.
@@ -630,6 +630,20 @@ scan_linker_output (fname)
*q = 0;
sym = symbol_hash_lookup (p, false);
+ /* Some SVR4 linkers produce messages like
+ ld: 0711-317 ERROR: Undefined symbol: .g__t3foo1Zi
+ */
+ if (! sym && ! end && strstr (q+1, "Undefined symbol: "))
+ {
+ char *p = strrchr (q+1, ' ');
+ p++;
+ if (*p == '.')
+ p++;
+ if (*p == '_' && prepends_underscore)
+ p++;
+ sym = symbol_hash_lookup (p, false);
+ }
+
if (! sym && ! end)
/* Try a mangled name in quotes. */
{