Izdanje programa za ispravljanje pogrešaka GDB 11

Predstavljeno je izdanje GDB 11.1 debuggera (prvo izdanje serije 11.x, za razvoj je korištena grana 11.0). GDB podržava otklanjanje pogrešaka na razini izvora za širok raspon 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 (tekstualno korisničko sučelje) 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-ju.
  • Dodana je podrška za mehanizam ARMv8.5 MTE (MemTag, Memory Tagging Extension), koji vam omogućuje vezivanje oznaka za svaku operaciju dodjele memorije i organiziranje provjere pokazivača prilikom pristupa memoriji, koja mora biti povezana s ispravnom oznakom. Remote Debug Control Protocol pruža podršku za pakete “qMemTags” i “QMemTags” za vezanje oznaka u memoriju.
  • Logika za čitanje konfiguracijskih datoteka je promijenjena. Datoteka .gdbinit sada se provjerava sljedećim redoslijedom: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit i $HOME/.gdbinit. Oni. prvo u poddirektoriju config, a tek onda u početnom direktoriju.
  • U naredbi “break […] if CONDITION” ispis pogreške se zaustavlja kada je uvjet nevažeći na određenim mjestima, ako je uvjet valjan u barem jednom slučaju.
  • Dodana podrška za otklanjanje pogrešaka jezgrenih ispisa generiranih za Cygwin programe kompilirane za x86_64 arhitekturu.
  • Dodana podrška za tipove s fiksnom točkom, kao i konstante DW_AT_GNU_numerator i DW_AT_GNU_denominator.
  • Dodana postavka "startup-quietly on|off"; kada je "uključeno", slično opciji "-tiho".
  • Naredba "ptype" implementira opcije /x" i "/d" za odabir heksadecimalnog ili decimalnog kod prikaza veličina i pomaka. Dodana je postavka "print type 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 pogrešaka (inferioran).
  • Izlaz naredbe “info source” je prerađen.
  • Dodana naredba “verzija stila prednji plan | pozadina | intenzitet" za kontrolu stila numeriranja verzija.
  • Dodane nove opcije naredbenog retka: “—early-init-command” (“-eix”), “—early-init-eval-command” (“-eiex”), “—qualified” (za naredbe '-break-insert ) ' i '-dprintf-insert'), "--force-condition" (za naredbe '-break-insert' i '-dprintf-insert'), "--force" (za '-break-condition ' naredba).
  • Naredba “-file-list-exec-source-files” omogućuje vam određivanje regularnih izraza za filtriranje izvornih datoteka za obradu. Polje 'debug-fully-read' dodano je izlazu kako bi se označilo opseg do kojeg su učitane informacije o otklanjanju pogrešaka.
  • Učinjena su poboljšanja Python API-ja. Dodane nove metode gdb.Frame.level() i db.PendingFrame.level() za vraćanje razine stoga za Frame objekt. Kada se aktivira catchpoint, Python API osigurava slanje gdb.BreakpointEvent umjesto gdb.StopEvent. Dodane su postavke "python ignore-environment on|off" za ignoriranje varijabli okruženja i "python dont-write-bytecode auto|on|off" za onemogućavanje pisanja bajt-koda.
  • Guile API je poboljšan. Dodane su nove procedure value-reference-value, value-rvalue-reference-value i value-const-value.
  • Potrebne ovisnosti sklopa uključuju biblioteku GMP (GNU Multiple Precision Arithmetic).
  • Podrška za ARM Symbian platformu (arm*-*-symbianelf*) je ukinuta.

Izvor: opennet.ru

Dodajte komentar