summaryrefslogtreecommitdiffstats
path: root/lldb/source/Core/Mangled.cpp
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2014-01-23 22:12:54 +0000
committerGreg Clayton <gclayton@apple.com>2014-01-23 22:12:54 +0000
commit146b7b123001e185a76e143a8443b93b7c011c4e (patch)
treee4328f397bf0a258615d281893010849634aac95 /lldb/source/Core/Mangled.cpp
parent403edc5c57b608585b94c93a648333231a9c68c7 (diff)
downloadbcm5719-llvm-146b7b123001e185a76e143a8443b93b7c011c4e.tar.gz
bcm5719-llvm-146b7b123001e185a76e143a8443b93b7c011c4e.zip
Updated to latest and greatest demangler sources.
<rdar://problem/15736085> llvm-svn: 199946
Diffstat (limited to 'lldb/source/Core/Mangled.cpp')
-rw-r--r--lldb/source/Core/Mangled.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/lldb/source/Core/Mangled.cpp b/lldb/source/Core/Mangled.cpp
index 089f5e50a09..55bd3cbb8e9 100644
--- a/lldb/source/Core/Mangled.cpp
+++ b/lldb/source/Core/Mangled.cpp
@@ -23,7 +23,7 @@
//----------------------------------------------------------------------
// Inlined copy of:
// http://llvm.org/svn/llvm-project/libcxxabi/trunk/src/cxa_demangle.cpp
-// revision 197169.
+// revision 199944.
//
// Changes include:
// - remove the "__cxxabiv1" namespace
@@ -2313,6 +2313,7 @@ parse_type(const char* first, const char* last, C& db)
// ::= gt # >
// ::= ix # []
// ::= le # <=
+// ::= li <source-name> # operator ""
// ::= ls # <<
// ::= lS # <<=
// ::= lt # <
@@ -2474,6 +2475,18 @@ parse_operator_name(const char* first, const char* last, C& db)
db.names.push_back("operator<=");
first += 2;
break;
+ case 'i':
+ {
+ const char* t = parse_source_name(first+2, last, db);
+ if (t != first+2)
+ {
+ if (db.names.empty())
+ return first;
+ db.names.back().first.insert(0, "operator\"\" ");
+ first = t;
+ }
+ }
+ break;
case 's':
db.names.push_back("operator<<");
first += 2;
OpenPOWER on IntegriCloud