summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/c-typeprint.c8
2 files changed, 12 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index e63c577ca88..76fa8883b34 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2002-01-15 Daniel Jacobowitz <drow@mvista.com>
+
+ * c-typeprint.c (is_type_conversion_operator): Add additional
+ check for non-conversion operators.
+
2002-01-15 Michael Snyder <msnyder@redhat.com>
* linux-proc.c: Add "info proc" command, a la procfs.c.
diff --git a/gdb/c-typeprint.c b/gdb/c-typeprint.c
index ce7fbe0de10..a202db437b2 100644
--- a/gdb/c-typeprint.c
+++ b/gdb/c-typeprint.c
@@ -402,7 +402,13 @@ is_type_conversion_operator (struct type *type, int i, int j)
while (strchr (" \t\f\n\r", *name))
name++;
- if (strncmp (name, "new", 3) == 0)
+ if (!('a' <= *name && *name <= 'z')
+ && !('A' <= *name && *name <= 'Z')
+ && *name != '_')
+ /* If this doesn't look like the start of an identifier, then it
+ isn't a type conversion operator. */
+ return 0;
+ else if (strncmp (name, "new", 3) == 0)
name += 3;
else if (strncmp (name, "delete", 6) == 0)
name += 6;