diff options
author | Anders Carlsson <andersca@mac.com> | 2014-02-17 21:56:01 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2014-02-17 21:56:01 +0000 |
commit | 2950e56d0fb30123dc93a55dc92f5a903c2bec13 (patch) | |
tree | a3e6b1dcef211e47a62ba7bbaac66a1c531c5e90 /src | |
parent | c82e02dd25b36e5d05cd3644499a553709c9395d (diff) | |
download | libcxxabi_35a-2950e56d0fb30123dc93a55dc92f5a903c2bec13.tar.gz |
Demangle Dc to decltype(auto) as per the Itanium C++ ABI spec.
git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@201533 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'src')
-rw-r--r-- | src/cxa_demangle.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cxa_demangle.cpp b/src/cxa_demangle.cpp index 839aebe..d1661e8 100644 --- a/src/cxa_demangle.cpp +++ b/src/cxa_demangle.cpp @@ -352,6 +352,7 @@ parse_substitution(const char* first, const char* last, C& db) // ::= Di # char32_t // ::= Ds # char16_t // ::= Da # auto (in dependent new-expressions) +// ::= Dc # decltype(auto) // ::= Dn # std::nullptr_t (i.e., decltype(nullptr)) // ::= u <source-name> # vendor extended type @@ -487,6 +488,10 @@ parse_builtin_type(const char* first, const char* last, C& db) db.names.push_back("auto"); first += 2; break; + case 'c': + db.names.push_back("decltype(auto)"); + first += 2; + break; case 'n': db.names.push_back("std::nullptr_t"); first += 2; |