Introdotto rilascio del debugger GDB 9.1 (prima versione della serie 9.x, per lo sviluppo è stato utilizzato il ramo 9.0). GDB supporta il debug a livello sorgente per un'ampia gamma di linguaggi di programmazione (Ada, C, C++, Objective-C, Pascal, Go, ecc.) su vari hardware (i386, amd64, ARM, Power, Sparc, RISC-V ed ecc.) e piattaforme software (GNU/Linux, *BSD, Unix, Windows, macOS).
Il supporto per le piattaforme Solaris 10 e Cell Broadband Engine è stato interrotto;
Aggiunto un nuovo simulatore del sottosistema PRU (Programmable Real-time Unit) utilizzato nei processori Texas Instruments (pru-*-elf);
Aggiunta una modalità sperimentale per il caricamento rapido dei simboli di debug in modalità multi-thread (abilitata tramite l'impostazione 'maint set work-threads unlimited');
È possibile utilizzare il simbolo '.' nei nomi dei comandi;
Aggiunta la possibilità di impostare punti di interruzione su funzioni e subroutine annidate in Fortran;
È stato svolto un lavoro per portare ad uno stile unificato e migliorare la leggibilità dei comandi;
È stata implementata un'infrastruttura standard per passare gli argomenti dei comandi utilizzando il carattere trattino ('-OPT'), che consente il completamento automatico utilizzando il tasto tab;
I comandi "printf" e "eval" implementano il supporto per l'output di stringhe negli stili C e Ada senza chiamare direttamente una funzione nel programma;
Aggiunto il supporto per filtrare i file di output in base a un'espressione regolare nel comando "fonti informazioni";
Nell'impostazione "imposta frame di stampa-argomenti", viene implementato il parametro "presenza", quando impostato, viene visualizzato solo l'indicatore di presenza "..." per gli argomenti invece di visualizzare il nome e il valore;
Nell'interfaccia TUI i comandi "focus", "winheight", "+", "-", ">", "<" ora fanno distinzione tra maiuscole e minuscole;
Per i comandi "print", "compile print", "backtrace", "frame"
apply", sono state implementate le opzioni "tfaas" e "faas" per sovrascrivere le impostazioni globali (ad esempio, quelle impostate tramite "set print […]");
L'opzione "-q" è stata aggiunta al comando "infotypes" per disabilitare l'output di alcune intestazioni;
Nelle impostazioni, al posto del valore “illimitato”, ora puoi specificare “u”;
Nuovi comandi aggiunti:
"define-prefix" per definire i propri comandi di prefisso;
"|" o "pipe" per eseguire un comando e reindirizzare l'output a un comando di shell;
“with” per eseguire il comando specificato con le impostazioni temporaneamente modificate;
"imposta funzioni di chiamata" per controllare se una subroutine può essere chiamata da GDB;
"set printfinish [on|off]" per controllare la visualizzazione del valore restituito quando si utilizza il comando "finish";
“imposta la profondità massima di stampa” per limitare l'output delle strutture nidificate;
“set print raw-values [on|off]” per abilitare/disabilitare la formattazione dei valori di output;
"set logging debugredirect [on|off]" per controllare il salvataggio dell'output di debug in un file di registro;
Una serie di nuovi comandi “imposta stile”;
"set print frame-info […]" per definire le informazioni che dovrebbero essere stampate quando si visualizza lo stato dello stack frame;
“set tui compact-source” per abilitare la modalità compatta per la visualizzazione del codice nell'interfaccia TUI (Text User Interface);
“info moduli […]” per richiedere informazioni sui moduli Fortran;
Invece di “set/show print raw-frame-arguments”, viene proposto il comando “set/show print raw-frame-arguments” (utilizza un trattino invece di uno spazio come separatore);
Nell'interfaccia del software 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" sono equivalenti agli stessi comandi GDB. Per impostazione predefinita, è attivata la terza versione dell'interprete MI (-i=mi3);
Aggiunta l'opzione “--with-system-gdbinit-dir” allo script di build di configurazione per determinare il percorso dei file di sistema gdbinit;
Sono stati apportati numerosi miglioramenti all'API Python. Aggiunta la possibilità di compilare con Python 3 su Windows;
I requisiti per l'ambiente di assemblaggio sono stati aumentati. La creazione di GDB e GDBserver ora richiede almeno GNU make 3.82. Quando si compila con una libreria readline esterna, è richiesto almeno GNU readline 7.0.