Izdaja razhroščevalnika GDB 9

Predložil izdaja razhroščevalnika GDB 9.1 (prva izdaja serije 9.x, veja 9.0 je bila uporabljena za razvoj). GDB podpira odpravljanje napak na izvorni ravni za široko paleto programskih jezikov (Ada, C, C++, Objective-C, Pascal, Go itd.) na različni strojni opremi (i386, amd64, ARM, Power, Sparc, RISC-V itd.) in programske platforme (GNU/Linux, *BSD, Unix, Windows, macOS).

Ključ izboljšave:

  • Podpora za platformi Solaris 10 in Cell Broadband Engine je bila ukinjena;
  • Dodan nov simulator podsistema PRU (Programmable Real-time Unit), ki se uporablja v procesorjih Texas Instruments (pru-*-elf);
  • Dodan eksperimentalni način za hitro nalaganje simbolov za razhroščevanje v večnitnem načinu (omogočeno z nastavitvijo 'maint set worker-threads unlimited');
  • V imenih ukazov je mogoče uporabiti simbol '.';
  • Dodana možnost nastavitve prekinitvenih točk na ugnezdenih funkcijah in podprogramih v Fortranu;
  • Opravljeno je bilo delo za poenotenje sloga in izboljšanje berljivosti ukazov;
  • Implementirana je bila standardna infrastruktura za posredovanje ukaznih argumentov z uporabo pomišljaja ('-OPT'), ki omogoča samodejno dokončanje s tabulatorsko tipko;
  • Ukaza »printf« in »eval« izvajata podporo za izpisovanje nizov v slogih C in Ada brez neposrednega klica funkcije v programu;
  • Dodana podpora za filtriranje izhodnih datotek na podlagi regularnega izraza v ukazu “info sources”;
  • V nastavitvi “set print frame-arguments” je implementiran parameter “presence”, ko je nastavljen, je za argumente prikazan samo indikator prisotnosti “…” namesto prikaza imena in vrednosti;
  • V vmesniku TUI ukazi "focus", "winheight", "+", "-", ">", "<" zdaj razlikujejo med velikimi in malimi črkami;
  • Za ukaze "print", "compile print", "backtrace", "frame"
    Uporabi«, možnosti »tfaas« in »faas« so bile implementirane za preglasitev globalnih nastavitev (na primer tistih, nastavljenih prek »nastavi tiskanje […]«);

  • Možnost "-q" je bila dodana ukazu "info types" za onemogočanje izpisa nekaterih glav;
  • V nastavitvah lahko namesto vrednosti »neomejeno« sedaj določite »u«;
  • Dodani novi ukazi:
    • "define-prefix" za definiranje lastnih ukazov predpone;
    • "|" ali "cev" za zagon ukaza in preusmeritev izhoda v ukaz lupine;
    • “with” za zagon podanega ukaza z začasno spremenjenimi nastavitvami;
    • “set may-call-functions” za nadzor, ali je podprogram mogoče poklicati iz GDB;
    • "set print finish [on|off]" za nadzor prikaza vrnjene vrednosti pri uporabi ukaza "finish";
    • »nastavi največjo globino tiskanja« za omejitev izpisa ugnezdenih struktur;
    • »set print raw-values ​​​​[on|off]«, da omogočite/onemogočite oblikovanje izhodnih vrednosti;
    • »set logging debugredirect [on|off]« za nadzor shranjevanja izhodnih podatkov za odpravljanje napak v dnevniško datoteko;
    • Niz novih ukazov »nastavi slog«;
    • »set print frame-info […]« za določitev informacij, ki naj bodo natisnjene pri prikazu stanja okvirja sklada;
    • »set tui compact-source«, da omogočite kompaktni način za prikaz kode v vmesniku TUI (Besedilni uporabniški vmesnik);
    • »informacijski moduli […]« za zahtevo po informacijah o modulih Fortran;
    • Namesto “set/show print raw-frame-arguments” je predlagan ukaz “set/show print raw-frame-arguments” (uporablja pomišljaj namesto presledka kot ločilo);
  • V nadzornem programskem vmesniku GDB/MI dodani novi ukazi “-complete”, “-catch-throw”, “-catch-rethrow”, “-catch-catch”, “-symbol-info-functions”, “-symbol-info-types”,
    "-symbol-info-variables", "-symbol-info-modules", "-symbol-info-module-functions" in "-symbol-info-module-variables" so enakovredni istim ukazom GDB. Privzeto je aktivirana tretja različica tolmača MI (-i=mi3);

  • Dodane nove vgrajene spremenljivke:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Dodana možnost »--with-system-gdbinit-dir« skriptu za gradnjo konfiguracije za določitev poti do sistemskih datotek gdbinit;
  • V Python API je bilo narejenih več izboljšav. Dodana možnost gradnje s Pythonom 3 v sistemu Windows;
  • Zahteve za montažno okolje so bile povečane. Gradnja GDB in GDBserver zdaj zahteva vsaj GNU make 3.82. Pri gradnji z zunanjo knjižnico readline je potrebna vsaj GNU readline 7.0.

Vir: opennet.ru

Dodaj komentar