[Lldb-commits] [PATCH] D52651: Add functionality to export settings

Raphael Isemann via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Oct 1 11:13:50 PDT 2018


teemperor requested changes to this revision.
teemperor added a comment.
This revision now requires changes to proceed.

Runnings `settings export` crashes LLDB:

  (lldb) down
  ❲ 8❳ CommandObjectSettingsExport::DoExecute(this=0x0000555555652a80, args=0x00007fffffffd6b8, result=0x00007fffffffdd80) at CommandObjectSettings.cpp:356 ❮liblldb.so.8svn❯
     353      result.SetStatus(eReturnStatusSuccessFinishResult);
     354 
     355      // Open file for dumping the exported settings.
  -> 356      const std::string export_path = args.GetArgumentAtIndex(0);
     357      const uint32_t options = File::eOpenOptionWrite |
     358                               File::eOpenOptionTruncate |
     359                               File::eOpenOptionCanCreate;
  (lldb) bt
  * thread #1, name = 'lldb', stop reason = signal SIGABRT
      ❲ 0❳ __GI_raise ❮libc.so.6❯
      ❲ 1❳ __GI_abort ❮libc.so.6❯
      ❲ 2❳ __gnu_cxx::__verbose_terminate_handler() (.cold.1) at vterminate.cc:95 ❮libstdc++.so.6❯
      ❲ 3❳ __cxxabiv1::__terminate(void (*)()) at eh_terminate.cc:47 ❮libstdc++.so.6❯
      ❲ 4❳ std::terminate() at eh_terminate.cc:57 ❮libstdc++.so.6❯
      ❲ 5❳ __cxxabiv1::__cxa_throw(obj=<unavailable>, tinfo=<unavailable>, dest=<unavailable>)(void *)) at eh_throw.cc:95 ❮libstdc++.so.6❯
      ❲ 6❳ std::__throw_logic_error(char const*) (.cold.0) at functexcept.cc:66 ❮libstdc++.so.6❯
      ❲ 7❳ void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(this="8����, __beg=0x0000000000000000, __end=<unavailable>, (null)=forward_iterator_tag @ 0x00007fffffffd3f0) at basic_string.tcc:212 ❮libstdc++.so.6❯
    * ❲ 8❳ CommandObjectSettingsExport::DoExecute(this=0x0000555555652a80, args=0x00007fffffffd6b8, result=0x00007fffffffdd80) at CommandObjectSettings.cpp:356 ❮liblldb.so.8svn❯
      ❲ 9❳ lldb_private::CommandObjectParsed::Execute(this=0x0000555555652a80, args_string="", result=0x00007fffffffdd80) at CommandObject.cpp:978 ❮liblldb.so.8svn❯
      ❲10❳ lldb_private::CommandInterpreter::HandleCommand(this=0x000055555562be30, command_line="settings export", lazy_add_to_history=eLazyBoolCalculate, result=0x00007fffffffdd80, override_context=0x0000000000000000, repeat_on_empty_command=true, no_context_switching=false) at CommandInterpreter.cpp:1702 ❮liblldb.so.8svn❯
      ❲11❳ lldb_private::CommandInterpreter::IOHandlerInputComplete(this=0x000055555562be30, io_handler=0x0000555555743b60, line="X����) at CommandInterpreter.cpp:2711 ❮liblldb.so.8svn❯
      ❲12❳ lldb_private::IOHandlerEditline::Run(this=0x0000555555743b60) at IOHandler.cpp:562 ❮liblldb.so.8svn❯
      ❲13❳ lldb_private::Debugger::ExecuteIOHandlers(this=0x000055555562a620) at Debugger.cpp:975 ❮liblldb.so.8svn❯
      ❲14❳ lldb_private::CommandInterpreter::RunCommandInterpreter(this=0x000055555562be30, auto_handle_events=true, spawn_thread=false, options=0x00007fffffffe080) at CommandInterpreter.cpp:2911 ❮liblldb.so.8svn❯
      ❲15❳ lldb::SBDebugger::RunCommandInterpreter(this=0x00007fffffffe4c0, auto_handle_events=true, spawn_thread=false) at SBDebugger.cpp:928 ❮liblldb.so.8svn❯
      ❲16❳ Driver::MainLoop(this=0x00007fffffffe4a0) at Driver.cpp:1139 ❮lldb❯
      ❲17❳ main(argc=1, argv=0x00007fffffffe6f8) at Driver.cpp:1244 ❮lldb❯
      ❲18❳ __libc_start_main ❮libc.so.6❯
      ❲19❳ _start ❮lldb❯


https://reviews.llvm.org/D52651





More information about the lldb-commits mailing list