diff options
Diffstat (limited to 'libcxxabi/src/cxa_demangle.cpp')
| -rw-r--r-- | libcxxabi/src/cxa_demangle.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libcxxabi/src/cxa_demangle.cpp b/libcxxabi/src/cxa_demangle.cpp index f2e7d286363..c9622031c6c 100644 --- a/libcxxabi/src/cxa_demangle.cpp +++ b/libcxxabi/src/cxa_demangle.cpp @@ -2200,10 +2200,15 @@ Node *Db::parseCtorDtorName(Node *&SoFar) { } if (consumeIf('C')) { + bool IsInherited = consumeIf('I'); if (look() != '1' && look() != '2' && look() != '3' && look() != '5') return nullptr; ++First; ParsedCtorDtorCV = true; + if (IsInherited) { + if (legacyParse<parse_name>() == nullptr) + return nullptr; + } return make<CtorDtorName>(SoFar, false); } |

