diff options
author | Pavel Labath <labath@google.com> | 2016-08-15 14:32:32 +0000 |
---|---|---|
committer | Pavel Labath <labath@google.com> | 2016-08-15 14:32:32 +0000 |
commit | 1ac2b20d25869f7dafd8a5f9b99f43eb60a07bb2 (patch) | |
tree | c641f44aee757720089228a31b3c69d79a4ec32c /lldb/source/Plugins/ExpressionParser | |
parent | ad61c170d5ac9f5a6fa22ad7ddac7e58daa6b46e (diff) | |
download | bcm5719-llvm-1ac2b20d25869f7dafd8a5f9b99f43eb60a07bb2.tar.gz bcm5719-llvm-1ac2b20d25869f7dafd8a5f9b99f43eb60a07bb2.zip |
Fix expression evaluation with operator new
Summary:
referencing a user-defined operator new was triggering an assert in clang because we were
registering the function name as string "operator new", instead of using the special operator
enum, which clang has for this purpose. Method operators already had code to handle this, and now
I extend this to cover free standing operator functions as well. Test included.
Reviewers: spyffe
Subscribers: sivachandra, paulherman, lldb-commits
Differential Revision: http://reviews.llvm.org/D17856
llvm-svn: 278670
Diffstat (limited to 'lldb/source/Plugins/ExpressionParser')
-rw-r--r-- | lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp index 7aeff6e964f..a0ea8ae730f 100644 --- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp +++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp @@ -2081,13 +2081,10 @@ ClangExpressionDeclMap::AddOneFunction (NameSearchContext &context, StreamString ss; function->DumpSymbolContext(&ss); - + log->Printf(" CEDM::FEVD[%u] Imported decl for function %s (description %s), returned %s", - current_id, - copied_function_decl->getName().str().c_str(), - ss.GetData(), + current_id, copied_function_decl->getNameAsString().c_str(), ss.GetData(), ast_dumper.GetCString()); - } context.AddNamedDecl(copied_function_decl); |