aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/minsyms.c10
2 files changed, 13 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index be1c785..4d20c3a 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2004-09-19 Jim Blandy <jimb@redhat.com>
+
+ * minsyms.c (lookup_minimal_symbol): Doc fix.
+
2004-09-20 Andrew Cagney <cagney@gnu.org>
* config/nm-lynx.h (DEPRECATED_CHILD_RESUME): Deprecate
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,