aboutsummaryrefslogtreecommitdiff
path: root/lldb/tools/lldb-instr/Instrument.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/tools/lldb-instr/Instrument.cpp')
-rw-r--r--lldb/tools/lldb-instr/Instrument.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lldb/tools/lldb-instr/Instrument.cpp b/lldb/tools/lldb-instr/Instrument.cpp
index c46afb4..f30707c 100644
--- a/lldb/tools/lldb-instr/Instrument.cpp
+++ b/lldb/tools/lldb-instr/Instrument.cpp
@@ -245,7 +245,9 @@ public:
// If the function returns a class or struct, we need to wrap its return
// statement(s).
- if (!ShouldInsertDummy && ReturnType->isStructureOrClassType()) {
+ bool ShouldRecordResult = ReturnType->isStructureOrClassType() ||
+ ReturnType->getPointeeCXXRecordDecl();
+ if (!ShouldInsertDummy && ShouldRecordResult) {
SBReturnVisitor Visitor(MyRewriter);
Visitor.TraverseDecl(Decl);
}