Uscita del debugger GDB 9

Presentato rilascio del debugger GDB 9.1 (prima versione della serie 9.x, il branch 9.0 è stato utilizzato per lo sviluppo). GDB supporta il debug a livello di sorgente per un'ampia varietà 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).

Chiave miglioramenti:

  • Supporto per le piattaforme Solaris 10 e Cell Broadband Engine terminato;
  • Aggiunto un nuovo simulatore per il sottosistema PRU (Programmable Real-time Unit), utilizzato nei processori Texas Instruments (pru-*-elf);
  • Introdotta una modalità sperimentale per un caricamento rapido dei simboli di debug in modalità multithreading (attivata attraverso l'impostazione ‘maint set worker-threads unlimited’);
  • Possibilità di utilizzare il carattere ‘.’ nei nomi dei comandi;
  • Aggiunta la possibilità di impostare punti di interruzione su funzioni e sottoprogrammi annidati in Fortran;
  • Lavori per uniformare lo stile e migliorare la leggibilità dei comandi;
  • Implementata l'infrastruttura standard per passare argomenti ai comandi usando il carattere trattino (‘-OPT’), consentendo il completamento automatico con il tasto Tab;
  • Nei comandi 'printf' e 'eval' implementata la supporto per l'output di stringhe in stili C e Ada senza dover chiamare direttamente la funzione nel programma;
  • Nel comando 'info sources' aggiunta la possibilità di filtrare i file di output basati su espressioni regolari;
  • Nell'impostazione 'set print frame-arguments' implementato il parametro 'presence', che se attivato mostra solo l'indicatore di presenza '...' invece del nome e del valore;
  • Nell'interfaccia TUI i comandi 'focus', 'winheight', '+', '-', '>', '<' ora sono sensibili al maiuscolo/minuscolo;
  • Per i comandi 'print', 'compile print', 'backtrace', 'frame
    apply', 'tfaas' e 'faas' implementate opzioni per ridefinire le impostazioni globali (ad esempio, quelle impostate tramite 'set print [...]');
  • Nel comando 'info types' aggiunta l'opzione '-q' per disabilitare l'output di alcuni intestazioni;
  • Nelle impostazioni, il valore 'unlimited' può ora essere indicato come '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 gestire la possibilità di chiamare un sottoprogramma 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 in output;
    • 'set logging debugredirect [on|off]' per gestire il salvataggio 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à compatta di visualizzazione del codice nell'interfaccia TUI (Text User Interface);
    • 'info modules [...]' per richiedere informazioni sui moduli Fortran;
    • Invece di 'set/show print raw frame-arguments' è stata proposta la comando 'set/show print raw-frame-arguments' (usa il trattino come separatore invece dello spazio);
  • Nell'interfaccia di controllo GDB/MI 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 analoghi di GDB. Per impostazione predefinita, viene attivata la terza versione dell'interprete MI (-i=mi3);
  • Aggiunte nuove variabili incorporate:
    • $_gdb_major, $_gdb_minor;
    • $_gdb_setting, $_gdb_setting_str, $_gdb_maint_setting,
    • $_gdb_maint_setting_str
    • $_cimag, $_creal
    • $_shell_exitcode, $_shell_exitsignal
  • Nel file di configurazione dello script è stata aggiunta l'opzione '—with-system-gdbinit-dir' per definire il percorso ai file di sistema gdbinit;
  • Eseguiti miglioramenti all'API di Python. Aggiunta la possibilità di compilazione con Python 3 su Windows;
  • Aumentati i requisiti per l'ambiente di compilazione. Per compilare GDB e GDBserver è necessario un minimo di GNU make 3.82. Se si compila con una libreria esterna readline, è richiesto almeno GNU readline 7.0.

Fonte: opennet.ru

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