diff options
author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-08-07 16:15:04 +0000 |
---|---|---|
committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-08-07 16:15:04 +0000 |
commit | 6539a5d820cfb8b5e592da6108d1ebf657cae962 (patch) | |
tree | bdd684270e8ecb28dc1649f1031b40a08c272a4f /libiberty/cp-demangle.c | |
parent | bd10a7cd7256848f2a2b54e6f7b4a250b19da1d8 (diff) | |
download | gcc-6539a5d820cfb8b5e592da6108d1ebf657cae962.tar.gz |
* cp-demangle.c (demangle_special_name): "GR" -> "reference temporary
for".
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@44694 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libiberty/cp-demangle.c')
-rw-r--r-- | libiberty/cp-demangle.c | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/libiberty/cp-demangle.c b/libiberty/cp-demangle.c index a6a2c1e9f1a..5ee8a2b457c 100644 --- a/libiberty/cp-demangle.c +++ b/libiberty/cp-demangle.c @@ -1842,11 +1842,27 @@ demangle_special_name (dm) if (peek == 'G') { - /* A guard variable name. Consume the G. */ + /* Consume the G. */ advance_char (dm); - RETURN_IF_ERROR (demangle_char (dm, 'V')); - RETURN_IF_ERROR (result_add (dm, "guard variable for ")); - RETURN_IF_ERROR (demangle_name (dm, &unused)); + switch (peek_char (dm)) + { + case 'V': + /* A guard variable name. */ + advance_char (dm); + RETURN_IF_ERROR (result_add (dm, "guard variable for ")); + RETURN_IF_ERROR (demangle_name (dm, &unused)); + break; + + case 'R': + /* A reference temporary. */ + advance_char (dm); + RETURN_IF_ERROR (result_add (dm, "reference temporary for ")); + RETURN_IF_ERROR (demangle_name (dm, &unused)); + break; + + default: + return "Unrecognized <special-name>."; + } } else if (peek == 'T') { |