GDB 11 izdanje debuggera

Predstavljeno je izdanje GDB 11.1 debuggera (prvo izdanje serije 11.x, grana 11.0 je korištena za razvoj). GDB podržava ispravljanje grešaka na nivou izvora za širok spektar programskih jezika (Ada, C, C++, Objective-C, Pascal, Go, Rust, itd.) na različitom hardveru (i386, amd64, ARM, Power, Sparc, RISC - V, itd.) i softverske platforme (GNU/Linux, *BSD, Unix, Windows, macOS).

Ključna poboljšanja:

  • TUI (Text User Interface) ima dodatnu podršku za radnje mišem i mogućnost pomicanja sadržaja pomoću kotačića miša. Omogućeno prosljeđivanje kombinacija tipki u GDB koje se ne obrađuju u TUI.
  • Dodata podrška za ARMv8.5 MTE (MemTag, Memory Tagging Extension) mehanizam, koji vam omogućava da povežete oznake za svaku operaciju dodjele memorije i organizirate provjeru pokazivača prilikom pristupa memoriji, koja mora biti povezana s ispravnom oznakom. Protokol kontrole udaljenog otklanjanja grešaka pruža podršku za pakete “qMemTags” i “QMemTags” za vezivanje oznaka za memoriju.
  • Promijenjena je logika za čitanje konfiguracijskih datoteka. Datoteka .gdbinit se sada provjerava sljedećim redoslijedom: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit i $HOME/.gdbinit. One. prvo u poddirektorijumu config, a tek onda u matičnom direktorijumu.
  • U naredbi “break […] if CONDITION”, izlaz greške se zaustavlja kada je uvjet nevažeći na određenim mjestima, ako je uvjet važeći u barem jednom slučaju.
  • Dodata podrška za otklanjanje grešaka dampova jezgra generisanih za Cygwin programe kompajlirane za arhitekturu x86_64.
  • Dodata podrška za tipove fiksne tačke, kao i DW_AT_GNU_numerator i DW_AT_GNU_denominator konstante.
  • Dodata postavka “startup-quietly on|off”; kada je "uključeno", slično opciji "-silent".
  • Komanda "ptype" implementira opcije /x" i "/d" za odabir heksadecimalne ili decimalne kada se prikazuju veličine i pomaci. Dodata postavka "tip print hex on|off" za korištenje heksadecimalnih vrijednosti u izlazu naredbe 'ptype'.
  • U naredbi "inferior", kada se poziva bez argumenata, daje se izlaz trenutnog objekta za otklanjanje grešaka (inferiornog).
  • Izlaz naredbe “info source” je prerađen.
  • Dodata naredba “style verzija prednjeg plana | pozadina | intenzitet" za kontrolu stila numeriranja verzija.
  • Dodane su nove opcije komandne linije: “—early-init-command” (“-eix”), “—early-init-eval-command” (“-eiex”), “—qualified” (za '-break-insert komande ) ' i '-dprintf-insert'), "--force-condition" (za naredbe '-break-insert' i '-dprintf-insert'), "--force" (za '-break-condition ' komanda).
  • Komanda '-file-list-exec-source-files' vam omogućava da specificirate regularne izraze za filtriranje izvornih datoteka koje treba obraditi. Polje 'debug-fully-read' je dodano u izlaz da naznači obim do kojeg su informacije za otklanjanje grešaka učitane.
  • Napravljena su poboljšanja u Python API-ju. Dodane nove metode gdb.Frame.level() i db.PendingFrame.level() za vraćanje nivoa steka za Frame objekat. Kada se tačka hvatanja aktivira, Python API osigurava da se gdb.BreakpointEvent pošalje umjesto gdb.StopEvent. Dodate postavke "python ignore-environment on|off" da ignorišu varijable okruženja i "python dont-write-bytecode auto|on|off" za onemogućavanje pisanja bajtkoda.
  • Učinjena su poboljšanja Guile API-ja. Dodane su nove procedure value-reference-value, value-rvalue-reference-value i value-const-value.
  • Potrebne zavisnosti sklopa uključuju GMP (GNU Multiple Precision Arithmetic) biblioteku.
  • Podrška za ARM Symbian platformu (arm*-*-symbianelf*) je ukinuta.

izvor: opennet.ru

Dodajte komentar