diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1991-04-19 23:50:06 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1991-04-19 23:50:06 +0000 |
commit | f88e7af8313dbf9c7c8f4781c2b1ac064c56ac2e (patch) | |
tree | a011a4c1449c9479f2f5f452407a86b11ef25d3e /gdb/cplus-dem.c | |
parent | 9ba8a5a46bc4cf3d18cdfc940895c1fabe18ede2 (diff) | |
download | gdb-f88e7af8313dbf9c7c8f4781c2b1ac064c56ac2e.zip gdb-f88e7af8313dbf9c7c8f4781c2b1ac064c56ac2e.tar.gz gdb-f88e7af8313dbf9c7c8f4781c2b1ac064c56ac2e.tar.bz2 |
* utils.c: Use CPLUS_MARKER not '$'.
* cplus-dem.c: Use CPLUS_MARKER not '$'. If CPLUS_MARKER isn't
defined, define it to '$'.
Diffstat (limited to 'gdb/cplus-dem.c')
-rw-r--r-- | gdb/cplus-dem.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/gdb/cplus-dem.c b/gdb/cplus-dem.c index 48109d8..3689b23 100644 --- a/gdb/cplus-dem.c +++ b/gdb/cplus-dem.c @@ -52,6 +52,13 @@ /* define this if names don't start with _ */ /* #define nounderscore 1 */ +/* This is '$' on systems where the assembler can deal with that. + Where the assembler can't, it's '.' (but on many systems '.' is + used for other things). */ +#if !defined (CPLUS_MARKER) +#define CPLUS_MARKER '$' +#endif + #include <stdio.h> #include <ctype.h> @@ -212,7 +219,7 @@ cplus_demangle (type, arg_mode) if (*p == '\0') { /* destructor */ - if (type[0] == '_' && type[1] == '$' && type[2] == '_') + if (type[0] == '_' && type[1] == CPLUS_MARKER && type[2] == '_') { int n = (strlen (type) - 3)*2 + 3 + 2 + 1; char *tem = (char *) xmalloc (n); @@ -223,7 +230,7 @@ cplus_demangle (type, arg_mode) return tem; } /* static data member */ - if (*type != '_' && (p = strchr (type, '$')) != NULL) + if (*type != '_' && (p = strchr (type, CPLUS_MARKER)) != NULL) { int n = strlen (type) + 2; char *tem = (char *) xmalloc (n); @@ -233,7 +240,7 @@ cplus_demangle (type, arg_mode) return tem; } /* virtual table "_vt$" */ - if (type[0] == '_' && type[1] == 'v' && type[2] == 't' && type[3] == '$') + if (type[0] == '_' && type[1] == 'v' && type[2] == 't' && type[3] == CPLUS_MARKER) { int n = strlen (type + 4) + 14 + 1; char *tem = (char *) xmalloc (n); @@ -810,7 +817,7 @@ munge_function_name (name, arg_mode) int arg_mode; { if (!string_empty (name) && name->p - name->b >= 3 - && name->b[0] == 'o' && name->b[1] == 'p' && name->b[2] == '$') + && name->b[0] == 'o' && name->b[1] == 'p' && name->b[2] == CPLUS_MARKER) { int i; /* see if it's an assignment expression */ |