This revision was automatically updated to reflect the committed changes. Closed by commit rG9b031d5e3a7b: [lldb] Make Process and subclass constructors protected (authored by mgorny). Herald added a project: LLDB.
Changed prior to commit: https://reviews.llvm.org/D131275?vs=450332&id=450822#toc Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D131275/new/ https://reviews.llvm.org/D131275 Files: lldb/include/lldb/Target/PostMortemProcess.h lldb/include/lldb/Target/Process.h lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp lldb/source/Plugins/Process/scripted/ScriptedProcess.h lldb/unittests/Expression/DWARFExpressionTest.cpp lldb/unittests/Process/ProcessEventDataTest.cpp lldb/unittests/Target/ExecutionContextTest.cpp lldb/unittests/Thread/ThreadTest.cpp
Index: lldb/unittests/Thread/ThreadTest.cpp =================================================================== --- lldb/unittests/Thread/ThreadTest.cpp +++ lldb/unittests/Thread/ThreadTest.cpp @@ -40,7 +40,8 @@ class DummyProcess : public Process { public: - using Process::Process; + DummyProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp) + : Process(target_sp, listener_sp) {} bool CanDebug(lldb::TargetSP target, bool plugin_specified_by_name) override { return true; Index: lldb/unittests/Target/ExecutionContextTest.cpp =================================================================== --- lldb/unittests/Target/ExecutionContextTest.cpp +++ lldb/unittests/Target/ExecutionContextTest.cpp @@ -47,7 +47,8 @@ class DummyProcess : public Process { public: - using Process::Process; + DummyProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp) + : Process(target_sp, listener_sp) {} bool CanDebug(lldb::TargetSP target, bool plugin_specified_by_name) override { return true; Index: lldb/unittests/Process/ProcessEventDataTest.cpp =================================================================== --- lldb/unittests/Process/ProcessEventDataTest.cpp +++ lldb/unittests/Process/ProcessEventDataTest.cpp @@ -42,7 +42,8 @@ class DummyProcess : public Process { public: - using Process::Process; + DummyProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp) + : Process(target_sp, listener_sp) {} bool CanDebug(lldb::TargetSP target, bool plugin_specified_by_name) override { return true; Index: lldb/unittests/Expression/DWARFExpressionTest.cpp =================================================================== --- lldb/unittests/Expression/DWARFExpressionTest.cpp +++ lldb/unittests/Expression/DWARFExpressionTest.cpp @@ -328,7 +328,9 @@ EXPECT_THAT_EXPECTED(Evaluate({DW_OP_lit0, DW_OP_deref}), llvm::Failed()); struct MockProcess : Process { - using Process::Process; + MockProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp) + : Process(target_sp, listener_sp) {} + llvm::StringRef GetPluginName() override { return "mock process"; } bool CanDebug(lldb::TargetSP target, bool plugin_specified_by_name) override { Index: lldb/source/Plugins/Process/scripted/ScriptedProcess.h =================================================================== --- lldb/source/Plugins/Process/scripted/ScriptedProcess.h +++ lldb/source/Plugins/Process/scripted/ScriptedProcess.h @@ -50,10 +50,6 @@ static llvm::StringRef GetPluginDescriptionStatic(); - ScriptedProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp, - const ScriptedProcess::ScriptedProcessInfo &launch_info, - Status &error); - ~ScriptedProcess() override; bool CanDebug(lldb::TargetSP target_sp, @@ -93,6 +89,10 @@ GetLoadedDynamicLibrariesInfos() override; protected: + ScriptedProcess(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp, + const ScriptedProcess::ScriptedProcessInfo &launch_info, + Status &error); + Status DoStop(); void Clear(); Index: lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp =================================================================== --- lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp +++ lldb/source/Plugins/Process/scripted/ScriptedProcess.cpp @@ -62,8 +62,8 @@ ScriptedProcess::ScriptedProcessInfo scripted_process_info( target_sp->GetProcessLaunchInfo()); - auto process_sp = std::make_shared<ScriptedProcess>( - target_sp, listener_sp, scripted_process_info, error); + auto process_sp = std::shared_ptr<ScriptedProcess>(new ScriptedProcess( + target_sp, listener_sp, scripted_process_info, error)); if (error.Fail() || !process_sp || !process_sp->m_script_object_sp || !process_sp->m_script_object_sp->IsValid()) { Index: lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h =================================================================== --- lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h +++ lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h @@ -49,8 +49,6 @@ class ProcessGDBRemote : public Process, private GDBRemoteClientBase::ContinueDelegate { public: - ProcessGDBRemote(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp); - ~ProcessGDBRemote() override; static lldb::ProcessSP CreateInstance(lldb::TargetSP target_sp, @@ -239,6 +237,8 @@ friend class GDBRemoteCommunicationClient; friend class GDBRemoteRegisterContext; + ProcessGDBRemote(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp); + bool SupportsMemoryTagging() override; /// Broadcaster event bits definitions. Index: lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp =================================================================== --- lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp +++ lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp @@ -193,14 +193,13 @@ PluginManager::UnregisterPlugin(ProcessGDBRemote::CreateInstance); } -lldb::ProcessSP -ProcessGDBRemote::CreateInstance(lldb::TargetSP target_sp, - ListenerSP listener_sp, - const FileSpec *crash_file_path, - bool can_connect) { +lldb::ProcessSP ProcessGDBRemote::CreateInstance( + lldb::TargetSP target_sp, ListenerSP listener_sp, + const FileSpec *crash_file_path, bool can_connect) { lldb::ProcessSP process_sp; if (crash_file_path == nullptr) - process_sp = std::make_shared<ProcessGDBRemote>(target_sp, listener_sp); + process_sp = std::shared_ptr<ProcessGDBRemote>( + new ProcessGDBRemote(target_sp, listener_sp)); return process_sp; } Index: lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h =================================================================== --- lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h +++ lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h @@ -36,9 +36,6 @@ static llvm::StringRef GetPluginDescriptionStatic(); - // Constructors and destructors - ProcessWindows(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp); - ~ProcessWindows(); size_t GetSTDOUT(char *buf, size_t buf_size, Status &error) override; @@ -104,6 +101,8 @@ Status DisableWatchpoint(Watchpoint *wp, bool notify = true) override; protected: + ProcessWindows(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp); + Status DoGetMemoryRegionInfo(lldb::addr_t vm_addr, MemoryRegionInfo &info) override; Index: lldb/include/lldb/Target/Process.h =================================================================== --- lldb/include/lldb/Target/Process.h +++ lldb/include/lldb/Target/Process.h @@ -475,15 +475,6 @@ const ProcessEventData &operator=(const ProcessEventData &) = delete; }; - /// Construct with a shared pointer to a target, and the Process listener. - /// Uses the Host UnixSignalsSP by default. - Process(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp); - - /// Construct with a shared pointer to a target, the Process listener, and - /// the appropriate UnixSignalsSP for the process. - Process(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp, - const lldb::UnixSignalsSP &unix_signals_sp); - /// Destructor. /// /// The destructor is virtual since this class is designed to be inherited @@ -2499,6 +2490,16 @@ protected: friend class Trace; + + /// Construct with a shared pointer to a target, and the Process listener. + /// Uses the Host UnixSignalsSP by default. + Process(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp); + + /// Construct with a shared pointer to a target, the Process listener, and + /// the appropriate UnixSignalsSP for the process. + Process(lldb::TargetSP target_sp, lldb::ListenerSP listener_sp, + const lldb::UnixSignalsSP &unix_signals_sp); + /// Get the processor tracing type supported for this process. /// Responses might be different depending on the architecture and /// capabilities of the underlying OS. Index: lldb/include/lldb/Target/PostMortemProcess.h =================================================================== --- lldb/include/lldb/Target/PostMortemProcess.h +++ lldb/include/lldb/Target/PostMortemProcess.h @@ -21,9 +21,9 @@ /// between these kinds of processes can have default implementations in this /// class. class PostMortemProcess : public Process { -public: using Process::Process; +public: bool IsLiveDebugSession() const override { return false; } };
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits