diff options
author | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-07-18 00:15:46 +0000 |
---|---|---|
committer | geoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-07-18 00:15:46 +0000 |
commit | 7234ad38d71dec993257ac7288fe2754eff75504 (patch) | |
tree | 1452584f9c8c3c18c1b05f87c3d53a46c890cb34 /gcc | |
parent | 3cf8306d2c3e335e220765e9bc53121e7ac867fd (diff) | |
download | gcc-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/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/tlink.c | 16 |
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. */ { |