جی سی سی 9.1


جی سی سی 9.1

3 مئی کو، GCC کے نویں ورژن کی پہلی عوامی ریلیز ہوئی: GCC 9.1۔
اس میں آٹھویں کے مقابلے میں بہت سی نمایاں بہتری اور اضافے شامل ہیں۔
ورژن

عام تبدیلیاں۔

اختیارات
  • وہ کمانڈ جو سائز کو قبول کرتے ہیں اب سائز بتانے کے لیے 64 بٹ ویلیوز اور لاحقوں کو سپورٹ کرتے ہیں۔
  • آپشن شامل کیا گیا۔ فلائیو پیچ کرنا,ان اصلاح کو کنٹرول کرنے کے لیے جو ممکنہ طور پر متحرک،کوڈ کی تبدیلی کے لیے تباہ کن ہیں؛
  • کمانڈ شیل میں خودکار تکمیل کو سپورٹ کرنے کے لیے --completion آپشن شامل کیا گیا۔
  • کمپائلر تشخیص میں اب لائن نمبر شامل ہیں (-fno-diagnostics-شو-لائن-نمبرز) اور
    قسم کی معلومات (fno-diagnostics-شو-لیبلز);
  • آپشن شامل کیا گیا۔ -fdiagnostics-format=json JSON فارمیٹ میں تشخیص کو آؤٹ پٹ کرنے کے لیے؛
  • صف بندی کی وضاحت کے لیے اختیارات (-فالن فنکشنزمثال کے طور پر) اب صف بندی کے کچھ اختیارات قبول کر سکتے ہیں۔
  • فائلوں کی فہرست کو فلٹر کرنے کے لیے اختیارات شامل کیے گئے (-fprofile-filter-files, -fprofile-exclude-files)، جو پروفائلر کے ذریعہ بنائے جاتے ہیں؛
  • ایڈریس سنیٹائزر اب اسٹیک پر متغیرات تک غلط رسائی کو پکڑنے کے لیے زیادہ کمپیکٹ الائنمنٹ کا استعمال کرتا ہے۔
  • متعدد آؤٹ پٹ بہتری -فوپٹ-معلومات;
  • آپشن شامل کیا گیا۔ -fsave-optimization-record ایک فائل میں اصلاح کی رپورٹ کو محفوظ کرنے کے لیے؛
  • آپشن شامل کیا گیا۔ -fipa-stack-alignment и -fipa-حوالہ- ایڈریس ایبل.
نئی بلٹ ان خصوصیات
نئی صفت
دیگر

متعدد کوڈ جنریشن بہتری سے متعلق:

  • سوئچ تعمیرات کی نسل؛
  • بین طریقہ کار کی اصلاح؛
  • پروفائلنگ کی معلومات پر مبنی اصلاح؛
  • اسمبلی مرحلے پر اصلاح (LTO)؛

نیز gcov کا اندرونی فارمیٹ اب JSON ہے، اور نیا آپشن ہے۔ --استعمال-گرمی-رنگ کوڈ کی رنگین لائنیں اس بنیاد پر شامل ہوتی ہیں کہ وہ کتنی بار استعمال ہوتے ہیں۔

زبانیں

معیار اور نفاذ کی تکمیل اوپن اے سی سی زبانیں C, C++ اور Fortran میں بہتری آتی جارہی ہے۔

سی جیسی زبانیں۔
  • OpenMP 5.0 کے لیے جزوی تعاون نافذ کر دیا گیا ہے۔
  • فنکشن شامل کیا گیا۔ __builtin_convertvector;
  • انتباہ شامل کیا گیا۔ -پیکڈ ممبر کا ویڈریس;
  • موجودہ انتباہات کی ایک بڑی تعداد میں بہتری؛
  • میکرو کو دلائل کی غلط تعداد میں منتقل کرنے کے دوران غلطی کے متن میں اب خود میکرو کا اعلان بھی شامل ہے۔
  • ٹائپنگ کی اصلاح کی تجاویز میں بہتری۔
C
  • -std=c2x (مستقبل کے C معیار) کے لیے ایک دلیل کے ساتھ _Static_asssert کی حمایت کریں؛
  • نئی وارننگ -Wabsolute-value، جو abs() جیسے افعال کے لیے غلط دلیل کی قسم کو پکڑتا ہے۔
C ++
  • نئی انتباہات: -ڈپریکیٹڈ کاپی,
    -Winit-list-lifetime,
    - بے کار حرکت,
    -وپسسیمائزنگ-چلنا,
    -Wclass-تبادلوں;
  • مستقبل کے معیار سے نئی خصوصیات کو نافذ کرنے کے لیے کام جاری ہے۔ C++2a;
  • فرنٹ اینڈ اب متعدد سورس کوڈ عناصر کے بارے میں زیادہ درست معلومات ذخیرہ کرتا ہے، جو آپ کو تشخیص میں مزید تفصیلی معلومات ظاہر کرنے کی اجازت دیتا ہے۔
  • اوورلوڈ فنکشنز، بائنری آپریٹرز، فنکشن کالز اور فارمیٹ سٹرنگز کے لیے بہتر تشخیص؛
  • متعدد مقبول غلطیوں (گمشدہ قوسین، نام کی جگہیں، ٹائپوز وغیرہ) کے لیے کچھ ترقیاتی ماحول سے تعاون یافتہ خودکار اصلاحات شامل کی گئیں۔
libstdc++
  • C++17 کا نفاذ اب تجرباتی نہیں ہے۔
  • متوازی الگورتھم شامل کیے گئے، ، ، اے اب ضرورت نہیں ہے -lstdc++ fs؛
  • C++2a کے لیے بہتر تجرباتی تعاون ( , , std::bind_front, etc.);
  • ونڈوز پر فائل اسٹریمز کو کھولنے کے لیے سپورٹ جن کے راستے غیر چار حروف پر مشتمل ہیں۔
  • ابتدائی حمایت ونڈوز پر؛
  • نیٹ ورکنگ TS کے لیے ابتدائی معاونت۔
D

D زبان کا ورژن 2.076 GCC میں شامل ہے۔

فورٹران۔
  • غیر مطابقت پذیر I/O کے لیے مکمل تعاون؛
  • MINLOC اور MAXLOC کے لیے لاگو بیک دلیل؛
  • نافذ کردہ FINDLOC اور IS_CONTIGOUS فنکشنز؛
  • پیچیدہ اعداد کے اجزاء تک رسائی کے لیے نحو کو نافذ کیا گیا ہے: c%re اور c%im;
  • نافذ کردہ نحو str%len اور a%kind;
  • لاگو کردہ C وضاحت کنندگان اور ISO_Fortran_binding.h ہیڈر؛
  • MAX اور MIN فنکشنز کے نتیجے کے لیے آرام دہ تقاضے جب ایک دلیل NaN ہو؛
  • آپشن شامل کیا گیا۔ -fdec-شامل ہے۔;
  • ہدایت شامل کی گئی۔ بلٹن.
libgccjit

دیگر

بہت سے فن تعمیر- اور OS کے ساتھ مخصوص تبدیلیاں۔

ماخذ: linux.org.ru

نیا تبصرہ شامل کریں