Rilascio del debugger GDB 15

È stato rilasciato il debugger GDB 15.1 (prima edizione della serie 15.x, la versione 15.0 è stata utilizzata per lo sviluppo). GDB supporta il debug 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:

  • Per costruire GDB e GDBserver è ora necessario un compilatore che supporti C++17 (almeno GCC 9).
  • Sono stati apportati miglioramenti all'API Python. Sono state aggiunte le funzioni gdb.notify_mi, gdb.missing_debug.register_handler e gdb.interrupt, la classe gdb.missing_debug.MissingDebugInfo, il modulo db.missing_debug, gli attributi gdb.Value.bytes e gdb.InferiorThread.ptid_string, le costanti gdb.SYMBOL_TYPE_DOMAIN, gdb.SYMBOL_FUNCTION_DOMAIN e gdb.SEARCH_*_DOMAIN. È stata implementata la possibilità di aggiungere attributi personalizzati agli oggetti gdb.Inferior e gdb.InferiorThread.
  • È proseguita l'implementazione del protocollo DAP (Debugger Adapter Protocol). È stato aggiunto il comando "set debug dap-log-level" per gestire la scrittura dei log per DAP. È stato aggiunto il supporto per la richiesta "cancel" e la possibilità di generare l'evento "process".
  • Il protocollo di debug remoto ha aggiunto il supporto per i pacchetti QThreadOptions e qIsAddressTagged, e ha implementato il comando "set/show remote thread-options-packet".
  • In GDBserver è stata interrotta la supporto per le opzioni "--remote-debug" e "--event-loop-debug", così come i comandi 'monitor set remote-debug' e 'monitor set event-loop-debug', per i quali è stata realizzata la possibilità di trasmettere un elenco di componenti per il debug separati da virgole (all, threads, event-loop e remote) nell'opzione "--debug". Analogamente, la possibilità di specificare i componenti è stata implementata nel comando 'monitor set debug'.
  • 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.
  • Sono state dichiarate obsolete le comandi MPX "show/set mpx bound", il cui supporto è stato interrotto da Intel nel 2019.
  • Sono stati aggiunti nuovi comandi:
    • "set/show direct-call-timeout"
    • "set/show indirect-call-timeout"
    • "set/show unwind-on-timeout on|off"
    • "set/show unwind-on-signal on|off"
  • Nei comandi "gcore" e "generate-core-file" è stato aggiunto il supporto per l'ottimizzazione dello spazio occupato da aree vuote nei core-file generati.

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