summaryrefslogtreecommitdiff
path: root/src/cxa_demangle.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/cxa_demangle.cpp')
-rw-r--r--src/cxa_demangle.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/cxa_demangle.cpp b/src/cxa_demangle.cpp
index 18a095b..8f5cb30 100644
--- a/src/cxa_demangle.cpp
+++ b/src/cxa_demangle.cpp
@@ -1927,7 +1927,8 @@ parse_type(const char* first, const char* last, C& db)
if (is_function)
{
size_t p = db.names[k].second.size();
- if (db.names[k].second[p-2] == '&')
+ if (db.names[k].second[p - 2] == '&' &&
+ db.names[k].second[p - 1] == '&')
p -= 2;
else if (db.names[k].second.back() == '&')
p -= 1;