релиз на отладчика , който поддържа отладка на ниво изходен код за широк спектър от езици за програмиране (Ada, C, C++, Objective-C, Pascal, Go и т.н.) на различни хардуерни (i386, amd64, ARM, Power, Sparc, RISC-V и т.н.) и софтуерни платформи (GNU/Linux, *BSD, Unix, Windows, macOS).
Ключови :
- В интерфейсите CLI и TUI е реализирана възможност за определяне на стила на терминала (добавена е команда „set style“). При наличност на GNU Highlight е реализирана подсветка на изходния код;
- Реализирана е експериментална поддръжка за компилиране и подмяна на изходния код на C++ в контролиран от GDB процес
(). За работа е необходима версия на GCC поне 7.1, сглобена с libcp1.so; - В GDB и GDBserver е добавена поддръжка за IPv6. За задаване на адреси IPv6 следва да се използва форматът „[ADDRESS]:PORT“;
- За целевите системи RISC-V е добавена поддръжка за описание на целта в XML формат ();
- На платформата FreeBSD е осигурена поддръжка за поставяне на точки за прихващане
(catchpoint) на системни повиквания, използвайки техните псевдоними, специфични за различни ABI (например, за ‘kevent’ наличен е псевдонимът ‘freebsd11_kevent’ за свързване с по-стара ABI); - В командата „target remote“ е добавена поддръжка за Unix-сокети (Unix Domain socket);
- Добавена е възможност за показване на всички файлове, отворени от процеса (команда „info proc files“);
- Реализирана е възможност за автоматично запазване на индекси на символи DWARF на диска за ускоряване на последващото зареждане на същия изпълним файл;
- В GDBserver за платформата PowerPC GNU/Linux е добавена поддръжка за достъп до регистрите PPR, DSCR, TAR, EBB/PMU и HTM;
- Добавени са нови команди „set/show debug compile-cplus-types“ и
„set/show debug skip“ за настройка на изходните данни за преобразуването на типове C++ и информация за пропуснати файлове и функции; - Добавени са команди „frame apply COMMAND“, „taas COMMAND“, „faas COMMAND“, „tfaas COMMAND“ за прилагане на команди върху стекови кадри и потоци;
- Направени са подобрения в командите „frame“, „select-frame“, „info frame“,
— „info functions“, „info types“, „info variables“, „info thread“, „info proc“; - При стартиране в пакетен режим GDB сега връща код за грешка 1 в случай на неуспех при изпълнението на последната команда;
- Добавена е възможност за компилиране на GDB с предоставения детектор на неопределено поведение (Undefined Behavior Sanitizer);
- Добавени са настройки за базова система (native configuration, за отладка на същата система) за платформи RISC-V GNU/Linux (riscv*-*-linux*) и RISC-V FreeBSD (riscv*-*-freebsd*);
- Добавени са настройки на целевите системи (target configuration): CSKY ELF (csky*-*-elf), CSKY GNU/Linux (csky*-*-linux), NXP S12Z ELF (s12z-*-elf), OpenRISC GNU/Linux (or1k*-*-linux*), RISC-V GNU/Linux (riscv*-*-linux*) и RISC-V FreeBSD (riscv*-*-freebsd*);
- Отстраняването на грешки на същата система в Windows сега изисква наличието на Windows XP или по-нови версии;
- За използването на Python API вече е необходим Python 2.6 или по-нова версия.
Източник: opennet.ru
