aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorCarlo Wood <carlo@alinoe.com>2003-12-19 23:15:24 +0000
committerCarlo Wood <carlo@gcc.gnu.org>2003-12-19 23:15:24 +0000
commit6fe68b374016c44a0dc26c00080fea053598e287 (patch)
tree71ceef44a39379679076f841f0992e7d9fd2be38 /libstdc++-v3
parent128325718c3085776b3601ee3fd068dd7950aa96 (diff)
downloadgcc-6fe68b374016c44a0dc26c00080fea053598e287.zip
gcc-6fe68b374016c44a0dc26c00080fea053598e287.tar.gz
gcc-6fe68b374016c44a0dc26c00080fea053598e287.tar.bz2
* bits/demangle.h
namespace __gnu_cxx::demangler (session<Allocator>::decode_encoding): Put the postfix of the return type of (member) functions after the function instead of after the return type. From-SVN: r74853
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/ChangeLog8
-rw-r--r--libstdc++-v3/include/bits/demangle.h7
2 files changed, 13 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index a8f93fe..1aeecd1 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,11 @@
+2003-12-20 Carlo Wood <carlo@alinoe.com>
+
+ * bits/demangle.h
+ namespace __gnu_cxx::demangler
+ (session<Allocator>::decode_encoding): Put the postfix
+ of the return type of (member) functions after the function
+ instead of after the return type.
+
2003-12-19 Jerry Quinn <jlquinn@optonline.net>
* include/bits/locale_facet.h
diff --git a/libstdc++-v3/include/bits/demangle.h b/libstdc++-v3/include/bits/demangle.h
index 82e2d06..2c24016 100644
--- a/libstdc++-v3/include/bits/demangle.h
+++ b/libstdc++-v3/include/bits/demangle.h
@@ -2665,12 +2665,14 @@ namespace __gnu_cxx
return demangler_session.M_pos;
}
// Must have been a <function name>.
+ string_type return_type_postfix;
if (demangler_session.M_name_is_template
&& !(demangler_session.M_name_is_cdtor
|| demangler_session.M_name_is_conversion_operator))
{
- if (!demangler_session.decode_type(output))
- // Return type of function
+ // Return type of function
+ if (!demangler_session.decode_type_with_postfix(output,
+ return_type_postfix))
return INT_MIN;
output += ' ';
}
@@ -2678,6 +2680,7 @@ namespace __gnu_cxx
if (!demangler_session.decode_bare_function_type(output))
return INT_MIN;
output += nested_name_qualifiers;
+ output += return_type_postfix;
return demangler_session.M_pos;
}