Author: Walter Erquinigo Date: 2020-09-29T13:09:52-07:00 New Revision: 92e1ebeaa1fe0e5461327d071c55167733834e60
URL: https://github.com/llvm/llvm-project/commit/92e1ebeaa1fe0e5461327d071c55167733834e60 DIFF: https://github.com/llvm/llvm-project/commit/92e1ebeaa1fe0e5461327d071c55167733834e60.diff LOG: [trace] Fix destructor declaration The destructor must be defined in the implementation class so that it can be called, as Vedant Kumar pointed out in: ''' What were your thoughts, re: +class Trace : public PluginInterface { +public: + ~Trace() override = default; Does this need to be `virtual ~Trace() = ...`? Otherwise, when a std::shared_ptr<Trace> is destroyed, the destructor for the derived TraceIntelPT instance won't run. ''' Added: Modified: lldb/include/lldb/Target/Trace.h lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h Removed: ################################################################################ diff --git a/lldb/include/lldb/Target/Trace.h b/lldb/include/lldb/Target/Trace.h index e4e9b1aa88a7..0aa2da7dbad4 100644 --- a/lldb/include/lldb/Target/Trace.h +++ b/lldb/include/lldb/Target/Trace.h @@ -35,8 +35,6 @@ namespace lldb_private { /// this information. class Trace : public PluginInterface { public: - ~Trace() override = default; - /// Dump the trace data that this plug-in has access to. /// /// This function will dump all of the trace data for all threads in a user diff --git a/lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h b/lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h index edc781e08ad4..d221caff3c18 100644 --- a/lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h +++ b/lldb/source/Plugins/Trace/intel-pt/TraceIntelPT.h @@ -20,6 +20,8 @@ class TraceIntelPT : public lldb_private::Trace { public: void Dump(lldb_private::Stream *s) const override; + ~TraceIntelPT() override = default; + /// PluginInterface protocol /// \{ lldb_private::ConstString GetPluginName() override; _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits