هفتم مرداد ماه صورت گرفت انتشار نسخه ۱۶.۲ شورای همکاری خلیج فارس — دومین نسخه پایدار از شاخه GCC 16. این نسخه جدید در درجه اول ماهیت اصلاحی دارد: توسعهدهندگان صراحتاً آن را یک نسخه رفع اشکال مینامند که شامل اصلاحاتی برای رگرسیونهای کشف شده در GCC 16.1 نسبت به نسخههای قبلی است.
در مجموع، از آوریل GCC 16.1، موارد زیر اصلاح شده است: ۱۰۲ خطای شناخته شدهاین اصلاحات بر اجزای مختلف کامپایلر و معماریهای پشتیبانیشده تأثیر میگذارند؛ هیچ تغییر عمدهی واحدی وجود ندارد که یک نسخه را تعریف کند.
GCC 16.2 یک نسخه با ویژگیهای جدید نیست: ویژگیهای اصلی شاخه GCC 16 در ... معرفی شدند. GCC 16.1، در تاریخ 30 آوریل منتشر شد. از جمله قابل توجهترین تغییرات در این شاخه:
- C++20 به حالت پیشفرض C++ تبدیل شده است. به جای GNU++17. برای استفاده از رفتار قبلی، اکنون باید پارامتر -std= مربوطه را به صراحت مشخص کنید. پشتیبانی آزمایشی برای ماژولهای C++20 هنوز به طور جداگانه فعال است.
- ادامه اجرا C ++ 26شامل بازتاب استاتیک تجربی، قراردادها، استثنائات constexpr و سایر پیشنهادهای استاندارد آینده.
- GCC شامل یک کامپایلر زبان آزمایشی است. الگول ۶۸ — ga68.
- پشتیبانی از پردازندههای x86 اضافه شده است. ایامدی ذن ۶ (-march=znver6)، اینتل وایلدکت لیک و نوا لیک. بهبود اتووکتوریزاسیون هنگام استفاده از AVX-512.
- پیادهسازی AArch64 اکنون پشتیبانی میکند Armv9.6-A، Apple M4 و M5، NVIDIA GB10 و هستههای پردازنده جدید Arm؛ امکان استفاده از افزونه Memory Tagging از طریق -fsanitize=memtag نیز اضافه شده است.
- برای تخلیه بار روی پردازندههای گرافیکی AMD، سربار راهاندازی مناطق OpenMP/OpenACC به طور قابل توجهی کاهش یافته و پشتیبانی آزمایشی برای شتابدهندهها اضافه شده است. ایامدی اینستینکت MI300 (gfx942).
بنابراین، GCC 16.2 در درجه اول برای کاربرانی در نظر گرفته شده است که پس از رفع مشکلات کشف شده پس از انتشار اولیه، مایل به مهاجرت به شاخه جدید هستند. کد منبع GCC 16.2 در آدرس زیر موجود است. آینههای رسمی پروژهGCC به عنوان یک نرمافزار آزاد در خانواده GNU توزیع شده است؛ کد اصلی کامپایلر تحت مجوز GPLv3+ منتشر شده است و استثنای کتابخانه زمان اجرای GCC برای تعدادی از کتابخانههای زمان اجرا اعمال میشود.
منبع: linux.org.ru
