إصدار مصحح الأخطاء GDB 11

تم تقديم إصدار مصحح أخطاء GDB 11.1 (الإصدار الأول من سلسلة 11.x، تم استخدام الفرع 11.0 للتطوير). يدعم GDB تصحيح الأخطاء على مستوى المصدر لمجموعة واسعة من لغات البرمجة (Ada وC وC++ وObjective-C وPascal وGo وRust وما إلى ذلك) على أجهزة مختلفة (i386 وamd64 وARM وPower وSparc وRISC - V، وما إلى ذلك) ومنصات البرامج (GNU/Linux، *BSD، Unix، Windows، macOS).

التحسينات الرئيسية:

  • أضافت TUI (واجهة المستخدم النصية) دعمًا لإجراءات الماوس والقدرة على تمرير المحتوى باستخدام عجلة الماوس. تمكين إعادة توجيه مجموعات المفاتيح إلى GDB التي لم تتم معالجتها في TUI.
  • تمت إضافة دعم لآلية ARMv8.5 MTE (MemTag، ملحق وضع علامات الذاكرة)، والتي تسمح لك بربط العلامات بكل عملية تخصيص للذاكرة وتنظيم فحص المؤشر عند الوصول إلى الذاكرة، والذي يجب أن يرتبط بالعلامة الصحيحة. يوفر بروتوكول التحكم في التصحيح عن بعد الدعم لحزم "qMemTags" و"QMemTags" لربط العلامات بالذاكرة.
  • تم تغيير منطق قراءة ملفات التكوين. يتم الآن فحص ملف .gdbinit بالترتيب التالي: $XDG_CONFIG_HOME/gdb/gdbinit، و$HOME/.config/gdb/gdbinit، و$HOME/.gdbinit. أولئك. أولا في الدليل الفرعي للتكوين، وبعد ذلك فقط في الدليل الرئيسي.
  • في الأمر "break […] if CONDITION"، يتم إيقاف إخراج الخطأ عندما يكون الشرط غير صالح في أماكن معينة، إذا كان الشرط صالحًا في حالة واحدة على الأقل.
  • تمت إضافة دعم لتصحيح أخطاء عمليات التفريغ الأساسية التي تم إنشاؤها لبرامج Cygwin المترجمة للبنية x86_64.
  • تمت إضافة دعم لأنواع النقاط الثابتة، بالإضافة إلى ثوابت DW_AT_GNU_numerator وDW_AT_GNU_denominator.
  • تمت إضافة إعداد "بدء التشغيل بهدوء|إيقاف التشغيل"؛ عند "التشغيل"، على غرار خيار "-صامت".
  • يقوم الأمر "ptype" بتنفيذ الخيارات /x" و"/d" لتحديد النظام الست عشري أو العشري عند عرض الأحجام والإزاحات. تمت إضافة إعداد "تشغيل نوع الطباعة السداسي | إيقافه" لاستخدام القيم السداسية العشرية في إخراج الأمر "ptype".
  • في الأمر "الأدنى"، عند استدعائه بدون وسيطات، يتم توفير إخراج كائن تصحيح الأخطاء الحالي (الأدنى).
  • تمت إعادة صياغة مخرجات أمر "مصدر المعلومات".
  • تمت إضافة الأمر "إصدار النمط الأمامي | الخلفية | "كثافة" للتحكم في نمط ترقيم الإصدار.
  • تمت إضافة خيارات سطر الأوامر الجديدة: "—early-init-command" ("-eix")، "-early-init-eval-command" ("-eiex")، "-مؤهل" (لأوامر "-break-insert" ) ' و'-dprintf-insert')، و"--force-condition" (للأمرين '-break-insert' و'-dprintf-insert')، و"--force" (للأمر "-break-condition" ' يأمر).
  • يسمح لك الأمر "-file-list-exec-source-files" بتحديد التعبيرات العادية لتصفية الملفات المصدر المراد معالجتها. تمت إضافة حقل "تصحيح الأخطاء بالكامل" إلى الإخراج للإشارة إلى مدى تحميل معلومات تصحيح الأخطاء.
  • تم إجراء تحسينات على Python API. تمت إضافة طرق جديدة gdb.Frame.level() وdb.PendingFrame.level() لإرجاع مستوى المكدس لكائن الإطار. عند تشغيل نقطة التقاط، تضمن واجهة برمجة تطبيقات Python إرسال gdb.BreakpointEvent بدلاً من gdb.StopEvent. تمت إضافة الإعدادات "pythongnont-environment on|off" لتجاهل متغيرات البيئة و"python dont-write-bytecode auto|on|off" لتعطيل كتابة الرمز الثانوي.
  • تم إجراء تحسينات على واجهة برمجة تطبيقات Guile. تمت إضافة القيمة المرجعية للإجراءات الجديدة والقيمة المرجعية والقيمة المرجعية والقيمة الثابتة.
  • تتضمن تبعيات التجميع المطلوبة مكتبة GMP (GNU Multiple Precision Arithmetic).
  • تم إيقاف دعم نظام ARM Symbian الأساسي (arm*-*-symbianelf*).

المصدر: opennet.ru

إضافة تعليق