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 + + * tlink.c (scan_linker_output): Tweak for output of AIX ld. + 2000-07-17 Richard Henderson * 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. */ {