From 57be4e89e8e92a9df39fa25c50788b275f727836 Mon Sep 17 00:00:00 2001 From: Jason Merrill Date: Fri, 17 Sep 1999 18:35:31 +0000 Subject: [PATCH] tlink.c (scan_linker_output): Look for keywords before accepting a mangled name in quotes. * tlink.c (scan_linker_output): Look for keywords before accepting a mangled name in quotes. From-SVN: r29479 --- gcc/ChangeLog | 5 +++++ gcc/tlink.c | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5667361e87b..8860f6cc835 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Sep 17 11:14:17 1999 Jason Merrill + + * tlink.c (scan_linker_output): Look for keywords before accepting + a mangled name in quotes. + Thu Sep 16 16:47:08 1999 Richard Henderson * alpha/alpha-interix.h (DWARF2_UNWIND_INFO): Define to zero. diff --git a/gcc/tlink.c b/gcc/tlink.c index a3df317389f..619c8c83b20 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 Free Software Foundation, Inc. + Copyright (C) 1995, 1998, 1999 Free Software Foundation, Inc. Contributed by Jason Merrill (jason@cygnus.com). This file is part of GNU CC. @@ -638,7 +638,11 @@ scan_linker_output (fname) else if (p = index (oldq, '"'), p) p++, q = index (p, '"'); - if (q) + /* We need to check for certain error keywords here, or we would + mistakenly use GNU ld's "In function `foo':" message. */ + if (q && (strstr (oldq, "ndefined") + || strstr (old, "nresolved") + || strstr (oldq, "ultiple"))) { *q = 0; dem = demangled_hash_lookup (p, false); -- 2.30.2