Paglabas ng debugger ng GDB 14

Inilabas ang GDB 14.1 (ang unang paglabas ng seryeng 14.x, ang sangay na 14.0 ang ginamit para sa pag-develop). Sinusuportahan ng GDB ang source-level debugging para sa malawak na hanay ng mga programming language (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust, atbp.) sa iba't ibang hardware (i386, amd64, ARM, Power, Sparc, RISC-V, atbp.) at mga software platform (GNU/Linux, *BSD, Unix, Windows, macOS).

Mga pangunahing pagpapabuti:

  • Ang code base ay na-convert upang gamitin ang pamantayang C++17. Ang pagbuo ng GDB ay nangangailangan na ngayon ng isang compiler na sumusuporta sa C++17 (hindi bababa sa GCC 9).
  • Nagdagdag ng impormasyon tungkol sa pangunahing function sa index, na nagbibigay-daan para sa mas mabilis na pagsisimula kapag ginamit sa ilang malalaking executable.
  • Ang suporta para sa AIX 4.x, 5.x at 6.x ay hindi na ipinagpatuloy (ang release 7.1 ay nakasaad bilang ang minimum na sinusuportahang bersyon ng AIX).
  • Nagdagdag ng paunang katutubong suporta para sa DAP (Debugger Adapter Protocol).
  • Nagdagdag ng suporta para sa NO_COLOR environment variable.
  • Nagdagdag ng paunang suporta para sa mga uri ng integer na mas malaki sa 64 bits.
  • Nagdagdag ng suporta para sa mga breakpoint na nakatali sa mga indibidwal na debug object (kapag nagde-debug ng maraming proseso).
  • Idinagdag ang function na "$_shell" upang magpatakbo ng command sa isang shell at ibalik ang resulta.
  • Ang mga pagpapabuti ay ginawa sa Python API:
    • Nagdagdag ng mga klase na gdb.Thread, gdb.unwinder.FrameId at gdb.ValuePrinter.
    • Nagdagdag ng mga attribute na gdb.Inferior.arguments, gdb.Inferior.main_name, gdb.Breakpoint.inferior, gdb.Progspace.symbol_file, gdb.Progspace.executable_filename.
    • Nagdagdag ng mga function na gdb.execute_mi(COMMAND, [ARG]...), gdb.block_signals().
    • Nagdagdag ng mga paraan gdb.Frame.static_link, gdb.Mababang 'clear_env', 'set_env' at 'unset_env', gdb.Type 'is_array_like' at 'is_string_like', gdb.Value 'assign', gdb.Value 'to_array', gdb. Progspace 'objfile_for_address', gdb.LazyString __str__. Nagdagdag ng mga kaganapan gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent, gdb.NewProgspaceEvent, gdb.FreeProgspaceEvent.
  • Idinagdag ang kakayahang paganahin o huwag paganahin ang mga indibidwal na tampok para sa malayuang pag-debug na mga target.
  • Pinahusay na suporta para sa arkitektura ng AArch64. Nagdagdag ng suporta para sa SME (Scalable Matrix Extension) at SME2 extension.
  • Pinahusay na suporta para sa wikang Ada at sa detalye ng Ada 2022.
  • Nagdagdag ng suporta para sa '.' argument sa 'list' command. upang i-print ang lokasyon ng execution point sa kasalukuyang stack frame.
  • Ang '%V' format specifier ay naidagdag sa printf at dprintf command.
  • Sa printf command, ang laki ng string na nakuha mula sa debug object ay nililimitahan ng setting na 'max-value-size'.
  • Idinagdag ang opsyon sa pagbuo na "--additional-debug-dirs=PATH", na nagtatakda ng default na halaga para sa parameter na 'debug-file-directory'.
  • Nagdagdag ng bagong command na "pangunahing impormasyon" upang kunin ang pangunahing simbolo na nagpapahiwatig ng entry point sa programa.
  • Idinagdag ang mga bagong utos:
    • "itakda ang debug breakpoint on|off"
    • "itakda ang tui mouse-events [on|off]"
    • "set always-read-ctf on|off"
    • "instruksyon sa talaan ng pagpapanatili ng print [N]"
    • "mga frame-unwinder ng impormasyon sa pagpapanatili"
    • "pagpapanatili ng wait-for-index-cache"

Pinagmulan: opennet.ru

Bumili ng maaasahang pagho-host para sa mga site na may proteksyon ng DDoS, mga server ng VPS VDS 🔥 Bumili ng maaasahang website hosting na may proteksyon ng DDoS, VPS VDS servers | ProHoster