Rilascio del debugger GDB 9

Presentato rilascio del debugger GDB 9.1 (prima uscita della serie 9.x, il ramo 9.0 è stato utilizzato per lo sviluppo). GDB supporta il debug a livello di codice sorgente per un'ampia gamma di linguaggi di programmazione (Ada, C, C++, Objective-C, Pascal, Go, ecc.) su diverse piattaforme hardware (i386, amd64, ARM, Power, Sparc, RISC-V, ecc.) e software (GNU/Linux, *BSD, Unix, Windows, macOS).

Le chiave miglioramenti:

  • Supporto per le piattaforme Solaris 10 e Cell Broadband Engine interrotto;
  • Aggiunto un nuovo simulatore della sottosistema PRU (Programmable Real-time Unit), utilizzato nei processori Texas Instruments (pru-*-elf);
  • Aggiunto un modo sperimentale per il caricamento veloce dei simboli di debug in modalità multithread (attivabile tramite l'impostazione ‘maint set worker-threads unlimited’);
  • Consentita l'uso del simbolo ‘.’ nei nomi dei comandi;
  • Aggiunta la possibilità di impostare punti di interruzione su funzioni e sottoprogrammi annidati in Fortran;
  • Rivisitato il dialogo per uniformare lo stile e migliorare la leggibilità dei comandi;
  • Implementata un'infrastruttura che consente il passaggio di argomenti ai comandi utilizzando il simbolo meno (‘-OPT’), permettendo l'autocompletamento con il tasto tab;
  • Nei comandi «printf» e «eval» aggiunta la possibilità di stampare stringhe in stili C e Ada senza chiamare direttamente la funzione nel programma;
  • Nel comando «info sources» aggiunta la supporto per filtrare i file di output in base a espressioni regolari;
  • Nell'impostazione «set print frame-arguments» implementato il parametro «presence», che quando attivato mostra solo un indicatore di presenza «…» anziché il nome e il valore;
  • Nell'interfaccia TUI i comandi «focus», «winheight», «+», «-«, «>», «<» ora sono case-sensitive;
  • Per i comandi «print», «compile print», «backtrace», «frame
    apply», «tfaas» e «faas» aggiunte opzioni per sovrascrivere le impostazioni globali (ad esempio, impostate tramite «set print […]»);
  • Nel comando «info types» aggiunta l'opzione «-q» per disattivare l'output di alcuni intestazioni;
  • Nelle impostazioni, invece del valore «unlimited», ora è possibile specificare «u»;
  • Sono stati aggiunti nuovi comandi:
    • «define-prefix» per definire comandi prefissati personalizzati;
    • «|» o «pipe» per eseguire un comando e reindirizzare l'output a un comando della shell;
    • «with» per eseguire il comando specificato con impostazioni temporaneamente modificate;
    • «set may-call-functions» per controllare la possibilità di chiamare sottoprogrammi da GDB;
    • «set print finish [on|off]» per gestire la visualizzazione del valore restituito quando si utilizza il comando «finish»;
    • «set print max-depth» per limitare l'output delle strutture annidate;
    • «set print raw-values [on|off]» per attivare/disattivare la formattazione dei valori restituiti;
    • «set logging debugredirect [on|off]» per controllare la registrazione dell'output di debug in un file di log;
    • Una serie di nuovi comandi «set style»;
    • «set print frame-info […]» per definire le informazioni da visualizzare quando si mostra lo stato del frame dello stack;
    • «set tui compact-source» per attivare la modalità compact per la visualizzazione del codice nell'interfaccia TUI (Interfaccia Utente Testuale);
    • «info modules […]» per richiedere informazioni sui moduli Fortran;
    • Invece di «set/show print raw frame-arguments» è stato proposto il comando «set/show print raw-frame-arguments» (utilizza un trattino come separatore invece di uno spazio);
  • Nell'interfaccia di gestione GDB/MI sono stati aggiunti nuovi comandi «-complete», «-catch-throw», «-catch-rethrow», «-catch-catch», «-symbol-info-functions», «-symbol-info-types»,
    «-symbol-info-variables», «-symbol-info-modules», «-symbol-info-module-functions» e «-symbol-info-module-variables», equivalenti ai comandi GDB simili. Per impostazione predefinita, è attivata la terza versione dell'interprete MI (-i=mi3);
  • Sono state aggiunte nuove variabili integrate:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Nel nuovo script di configurazione è stata aggiunta l'opzione «--with-system-gdbinit-dir» per definire il percorso dei file di sistema gdbinit;
  • Sono stati apportati miglioramenti all'API di Python. È stata aggiunta la possibilità di compilare con Python 3 su Windows;
  • Sono stati aumentati i requisiti per l'ambiente di compilazione. Ora per compilare GDB e GDBserver è richiesta almeno GNU make 3.82. Quando si compila con la libreria esterna readline, è richiesta almeno la GNU readline 7.0.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster