Ă stato rilasciato il debugger GDB 14.1 (prima versione della serie 14.x, il branch 14.0 Ăš stato utilizzato per lo sviluppo). GDB supporta il debugging a livello di sorgente per un ampio spettro di linguaggi di programmazione (Ada, C, C++, D, Fortran, Go, Objective-C, Modula-2, Pascal, Rust, ecc.) su diverse piattaforme hardware (i386, amd64, ARM, Power, Sparc, RISC-V, ecc.) e software (GNU/Linux, *BSD, Unix, Windows, macOS).
Miglioramenti chiave:
- Il codice sorgente Ăš stato aggiornato per utilizzare lo standard C++17. Ora Ăš necessario un compilatore che supporti C++17 per compilare GDB (almeno GCC 9).
- Nel indice sono state aggiunte informazioni sulla funzione main, il che consente di velocizzare l'avvio quando si utilizza con alcuni file eseguibili di grandi dimensioni.
- Ă stata interrotta la supporto per i sistemi operativi AIX 4.x, 5.x e 6.x (la versione minima supportata di AIX Ăš la 7.1).
- Ă stato aggiunto il supporto iniziale incorporato per il protocollo DAP (Debugger Adapter Protocol).
- Ă stato aggiunto il supporto per la variabile d'ambiente NO_COLOR.
- Ă stato aggiunto il supporto iniziale per tipi di dato interi con dimensione superiore a 64 bit.
- Ă stata aggiunta la supporto per i punti di interruzione legati a oggetti di debugging specifici (nella debug di piĂč processi).
- à stata aggiunta la funzione «$_shell» per eseguire comandi nella shell e restituire i risultati.
- Miglioramenti sono stati apportati all'API Python:
- Sono stati aggiunti i classi gdb.Thread, gdb.unwinder.FrameId e gdb.ValuePrinter.
- Sono stati aggiunti gli attributi gdb.Inferior.arguments, gdb.Inferior.main_name, gdb.Breakpoint.inferior, gdb.Progspace.symbol_file, gdb.Progspace.executable_filename.
- Sono state aggiunte le funzioni gdb.execute_mi(COMMAND, [ARG]âŠ), gdb.block_signals().
- Sono stati aggiunti i metodi gdb.Frame.static_link, gdb.Inferior âclear_envâ, âset_envâ e âunset_envâ, gdb.Type âis_array_likeâ e âis_string_likeâ, gdb.Value âassignâ, gdb.Value âto_arrayâ, gdb.Progspace âobjfile_for_addressâ, gdb.LazyString __str__. Sono stati aggiunti eventi gdb.ThreadExitedEvent, gdb.ExecutableChangedEvent, gdb.NewProgspaceEvent, gdb.FreeProgspaceEvent.
- Ă stata aggiunta la possibilitĂ di abilitare e disabilitare singole funzionalitĂ per obiettivi di debug remoti.
- Migliorato il supporto per l'architettura AArch64. Ă stato aggiunto il supporto per le estensioni SME (Scalable Matrix Extension) e SME2.
- Migliorato il supporto per il linguaggio Ada e la specifica Ada 2022.
- Nella comando âlistâ Ăš stato aggiunto il supporto per l'argomento â.â per stampare la posizione del punto di esecuzione nel frame di stack corrente.
- Nelle comandi printf e dprintf Ăš stato aggiunto il specificatore di formato â%Vâ.
- Nella comando printf, la dimensione della stringa estratta dall'oggetto di debug Ăš limitata al valore della configurazione âmax-value-sizeâ.
- Ă stata aggiunta l'opzione di compilazione «âadditional-debug-dirs=PATH», che imposta il valore predefinito per il parametro âdebug-file-directoryâ.
- à stato aggiunto un nuovo comando «info main» per estrarre il simbolo main, che indica il punto di ingresso del programma.
- Sono stati aggiunti nuovi comandi:
- «set debug breakpoint on|off»
- «set tui mouse-events [on|off]»
- «set always-read-ctf on|off»
- «maintenance print record-instruction [ N ]»
- «maintenance info frame-unwinders»
- «maintenance wait-for-index-cache»
Fonte: opennet.ru
