Lëshimi i korrigjuesit të GDB 11

Është paraqitur lëshimi i korrigjuesit GDB 11.1 (lëshimi i parë i serisë 11.x, dega 11.0 u përdor për zhvillim). GDB mbështet korrigjimin e nivelit të burimit për një gamë të gjerë gjuhësh programimi (Ada, C, C++, Objective-C, Pascal, Go, Rust, etj.) në pajisje të ndryshme (i386, amd64, ARM, Power, Sparc, RISC - V, etj.) dhe platformat softuerike (GNU/Linux, *BSD, Unix, Windows, macOS).

Përmirësimet kryesore:

  • TUI (Text User Interface) ka shtuar mbështetje për veprimet e miut dhe aftësinë për të lëvizur përmbajtjen me timonin e miut. Aktivizoi përcjelljen e kombinimeve të çelësave në GDB që nuk përpunohen në TUI.
  • Mbështetje e shtuar për mekanizmin ARMv8.5 MTE (MemTag, Memory Tagging Extension), i cili ju lejon të lidhni etiketat me çdo operacion të shpërndarjes së memories dhe të organizoni një kontroll të treguesit kur qaseni në kujtesë, i cili duhet të shoqërohet me etiketën e duhur. Protokolli i kontrollit të korrigjimit në distancë ofron mbështetje për paketat "qMemTags" dhe "QMemTags" për lidhjen e etiketave në memorie.
  • Logjika për leximin e skedarëve të konfigurimit është ndryshuar. Skedari .gdbinit tani kontrollohet në rendin vijues: $XDG_CONFIG_HOME/gdb/gdbinit, $HOME/.config/gdb/gdbinit dhe $HOME/.gdbinit. Ato. fillimisht në nëndrejtorinë e konfigurimit dhe vetëm më pas në direktorinë kryesore.
  • Në komandën "break [...] if CONDITION", dalja e gabimit ndalet kur një kusht është i pavlefshëm në vende të caktuara, nëse kushti është i vlefshëm në të paktën një rast.
  • Mbështetje e shtuar për korrigjimin e debutimeve bazë të krijuara për programet Cygwin të përpiluara për arkitekturën x86_64.
  • U shtua mbështetje për llojet me pikë fikse, si dhe konstantet DW_AT_GNU_numerator dhe DW_AT_GNU_emëruesi.
  • U shtua cilësimi "startup-quietly on|off"; kur "on", ngjashëm me opsionin "-silent".
  • Komanda "ptype" zbaton opsionet /x" dhe "/d" për të zgjedhur heksadecimal ose dhjetor kur shfaqen madhësitë dhe zhvendosjet. U shtua cilësimi "print type hex on|off" për të përdorur vlera heksadecimal në daljen e komandës 'ptype'.
  • Në komandën "inferior", kur thirret pa argumente, sigurohet dalja e objektit aktual të korrigjimit (inferior).
  • Prodhimi i komandës "burimi i informacionit" është ripunuar.
  • U shtua komanda “versioni i stilit në plan të parë | sfond | intensiteti" për të kontrolluar stilin e numërimit të versioneve.
  • U shtuan opsione të reja të linjës së komandës: "-early-init-command" ("-eix"), "-early-init-eval-command" ("-eiex"), "-kualifikuar" (për komandat '-break-insert ) ' dhe '-dprintf-insert'), "--force-condition" (për komandat '-break-insert' dhe '-dprintf-insert'), "--force" (për '-break-condition ' komandë).
  • Komanda "-file-list-exec-source-files" ju lejon të specifikoni shprehje të rregullta për të filtruar skedarët burimorë që do të përpunohen. Një fushë 'debug-fully-lexed' është shtuar në dalje për të treguar shkallën në të cilën është ngarkuar informacioni i korrigjimit.
  • Janë bërë përmirësime në Python API. U shtuan metoda të reja gdb.Frame.level() dhe db.PendingFrame.level() për të kthyer nivelin e stivës për një objekt Frame. Kur aktivizohet një pikë kapëse, Python API siguron që gdb.BreakpointEvent të dërgohet në vend të gdb.StopEvent. Shtoi cilësimet "python ignore-environment on|off" për të injoruar variablat e mjedisit dhe "python dont-write-bytecode auto|on|off" për të çaktivizuar shkrimin e bytekodit.
  • Janë bërë përmirësime në API Guile. Janë shtuar procedurat e reja vlerë-referencë-vlerë, vlerë-rvalue-referencë-vlerë dhe vlerë-konst-vlerë.
  • Varësitë e kërkuara të montimit përfshijnë bibliotekën GMP (GNU Multiple Precision Arithmetic).
  • Mbështetja për platformën Symbian ARM (arm*-*-symbianelf*) është ndërprerë.

Burimi: opennet.ru

Shto një koment