diff options
author | Greg Clayton <gclayton@apple.com> | 2016-04-12 22:02:37 +0000 |
---|---|---|
committer | Greg Clayton <gclayton@apple.com> | 2016-04-12 22:02:37 +0000 |
commit | 08f5674bfe6152077b384529a9ddf236e77756fa (patch) | |
tree | 9c4865ecdcab4294ae18651fdcdd7c786bcb74a8 /lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp | |
parent | ade56c3ea0805a9e97ea18924fd1ca5b14917edb (diff) | |
download | bcm5719-llvm-08f5674bfe6152077b384529a9ddf236e77756fa.tar.gz bcm5719-llvm-08f5674bfe6152077b384529a9ddf236e77756fa.zip |
Fixed being able to set breakpoints on destructors when we don't fully specify the demangled name. So all of the following now work:
(lldb) b ~Foo
(lldb) b Foo::~Foo
(lldb) b Bar::Foo::~Foo
Improved out C++ breakpoint locations tests as well to cover this issue.
<rdar://problem/25577252>
llvm-svn: 266139
Diffstat (limited to 'lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp')
-rw-r--r-- | lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp b/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp index 232470c3755..829a79e33eb 100644 --- a/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp +++ b/lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp @@ -330,7 +330,7 @@ CPlusPlusLanguage::IsCPPMangledName (const char *name) bool CPlusPlusLanguage::ExtractContextAndIdentifier (const char *name, llvm::StringRef &context, llvm::StringRef &identifier) { - static RegularExpression g_basename_regex("^(([A-Za-z_][A-Za-z_0-9]*::)*)([A-Za-z_][A-Za-z_0-9]*)$"); + static RegularExpression g_basename_regex("^(([A-Za-z_][A-Za-z_0-9]*::)*)(~?[A-Za-z_~][A-Za-z_0-9]*)$"); RegularExpression::Match match(4); if (g_basename_regex.Execute (name, &match)) { |