From d73f140ac2cd081eb1bd6a0c33d215632e9bcce7 Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Mon, 20 Sep 2004 16:54:28 +0000 Subject: * minsyms.c (lookup_minimal_symbol): Doc fix. --- gdb/minsyms.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'gdb/minsyms.c') diff --git a/gdb/minsyms.c b/gdb/minsyms.c index 3aeda7d..635d0cc 100644 --- a/gdb/minsyms.c +++ b/gdb/minsyms.c @@ -145,7 +145,15 @@ add_minsym_to_demangled_hash_table (struct minimal_symbol *sym, Note: One instance where there may be duplicate minimal symbols with the same name is when the symbol tables for a shared library and the symbol tables for an executable contain global symbols with the same - names (the dynamic linker deals with the duplication). */ + names (the dynamic linker deals with the duplication). + + It's also possible to have minimal symbols with different mangled + names, but identical demangled names. For example, the GNU C++ v3 + ABI requires the generation of two (or perhaps three) copies of + constructor functions --- "in-charge", "not-in-charge", and + "allocate" copies; destructors may be duplicated as well. + Obviously, there must be distinct mangled names for each of these, + but the demangled names are all the same: S::S or S::~S. */ struct minimal_symbol * lookup_minimal_symbol (const char *name, const char *sfile, -- cgit v1.1