Eingereicht von Debugger-Version GDB 9.1 (erste Veröffentlichung der 9.x-Serie, Zweig 9.0 wurde für die Entwicklung verwendet). GDB unterstützt das Debuggen auf Quellebene für eine Vielzahl von Programmiersprachen (Ada, C, C++, Objective-C, Pascal, Go usw.) auf verschiedener Hardware (i386, amd64, ARM, Power, Sparc, RISC-V). usw.) und Softwareplattformen (GNU/Linux, *BSD, Unix, Windows, macOS).
Die Unterstützung für die Plattformen Solaris 10 und Cell Broadband Engine wurde eingestellt.
Ein neuer Simulator des PRU-Subsystems (Programmable Real-time Unit) hinzugefügt, das in Texas Instruments-Prozessoren (pru-*-elf) verwendet wird;
Es wurde ein experimenteller Modus zum schnellen Laden von Debugging-Symbolen im Multithread-Modus hinzugefügt (aktiviert über die Einstellung „maint set worker-threads unlimited“);
Es ist möglich, das Symbol „.“ in Befehlsnamen zu verwenden;
Es wurde die Möglichkeit hinzugefügt, Haltepunkte für verschachtelte Funktionen und Unterroutinen in Fortran festzulegen;
Es wurden Arbeiten durchgeführt, um einen einheitlichen Stil zu erreichen und die Lesbarkeit der Befehle zu verbessern.
Für die Übergabe von Befehlsargumenten mithilfe des Bindestrichs („-OPT“) wurde eine Standardinfrastruktur implementiert, die eine automatische Vervollständigung mithilfe der Tabulatortaste ermöglicht.
Die Befehle „printf“ und „eval“ implementieren die Unterstützung für die Ausgabe von Zeichenfolgen im C- und Ada-Stil, ohne direkt eine Funktion im Programm aufzurufen;
Unterstützung für das Filtern von Ausgabedateien basierend auf einem regulären Ausdruck im Befehl „Infoquellen“ hinzugefügt;
In der Einstellung „set print frame-arguments“ ist der Parameter „presence“ implementiert. Wenn er gesetzt ist, wird für Argumente nur der Anwesenheitsindikator „…“ angezeigt, anstatt den Namen und den Wert anzuzeigen;
In der Schnittstelle TUI Bei den Befehlen „focus“, „winheight“, „+“, „-“, „>“, „<“ wird jetzt zwischen Groß- und Kleinschreibung unterschieden.
Für die Befehle „print“, „compile print“, „backtrace“, „frame“
Die Optionen „apply“, „tfaas“ und „faas“ wurden implementiert, um globale Einstellungen zu überschreiben (z. B. diejenigen, die über „set print […]“ festgelegt wurden);
Die Option „-q“ wurde zum Befehl „Infotypen“ hinzugefügt, um die Ausgabe einiger Header zu deaktivieren;
In den Einstellungen können Sie statt des „unbegrenzten“ Wertes nun „u“ angeben;
Neue Befehle hinzugefügt:
„define-prefix“, um Ihre eigenen Präfixbefehle zu definieren;
„|“ oder „pipe“, um einen Befehl auszuführen und die Ausgabe an einen Shell-Befehl umzuleiten;
„with“, um den angegebenen Befehl mit vorübergehend geänderten Einstellungen auszuführen;
„May-Call-Funktionen festlegen“, um zu steuern, ob eine Unterroutine von GDB aus aufgerufen werden kann;
„set print finish [on|off]“, um die Anzeige des Rückgabewerts bei Verwendung des „finish“-Befehls zu steuern;
„Setze die maximale Drucktiefe“, um die Ausgabe verschachtelter Strukturen zu begrenzen.
„set print raw-values [on|off]“, um die Formatierung von Ausgabewerten zu aktivieren/deaktivieren;
„set logging debugredirect [on|off]“, um das Speichern der Debug-Ausgabe in einer Protokolldatei zu steuern;
Eine Reihe neuer „Stil festlegen“-Befehle;
„set print frame-info […]“, um die Informationen zu definieren, die gedruckt werden sollen, wenn der Stack-Frame-Status angezeigt wird;
„set tui compact-source“, um den Kompaktmodus für die Anzeige von Code in der TUI-Schnittstelle (Text User Interface) zu aktivieren;
„Infomodule […]“, um Informationen über Fortran-Module anzufordern;
Anstelle von „set/show print raw-frame-arguments“ wird der Befehl „set/show print raw-frame-arguments“ vorgeschlagen (verwendet einen Bindestrich anstelle eines Leerzeichens als Trennzeichen);
In der Steuerungssoftwareschnittstelle GDB/MI Neue Befehle hinzugefügt „-complete“, „-catch-throw“, „-catch-rethrow“, „-catch-catch“, „-symbol-info-functions“, „-symbol-info-types“,
„-symbol-info-variables“, „-symbol-info-modules“, „-symbol-info-module-functions“ und „-symbol-info-module-variables“ entsprechen denselben GDB-Befehlen. Standardmäßig ist die dritte Version des MI-Interpreters aktiviert (-i=mi3);
Option „--with-system-gdbinit-dir“ zum Build-Konfigurationsskript hinzugefügt, um den Pfad zu den gdbinit-Systemdateien zu bestimmen;
An der Python-API wurden eine Reihe von Verbesserungen vorgenommen. Möglichkeit zum Erstellen mit Python 3 unter Windows hinzugefügt;
Die Anforderungen an die Montageumgebung wurden erhöht. Für die Erstellung von GDB und GDBserver ist jetzt mindestens GNU make 3.82 erforderlich. Beim Erstellen mit einer externen Readline-Bibliothek ist mindestens GNU Readline 7.0 erforderlich.