GCC 9.1

මැයි 3 වන දින, GCC හි නවවන අනුවාදයේ පළමු ප්‍රසිද්ධ නිකුතුව සිදු විය: GCC 9.1.
එය අටවැන්නට සාපේක්ෂව සැලකිය යුතු වැඩිදියුණු කිරීම් සහ එකතු කිරීම් අඩංගු වේ
පිටපත.

සාමාන්ය වෙනස්කම්

විකල්ප
  • ප්‍රමාණය පිළිගන්නා විධාන දැන් 64-bit අගයන් සහ ප්‍රමාණය නියම කිරීමට උපසර්ග සඳහා සහය දක්වයි;
  • එකතු කරන ලද විකල්පය - පියාසර කිරීම, ගතික, කේත ප්‍රතිස්ථාපනයට විනාශකාරී විය හැකි ප්‍රශස්තකරණයන් පාලනය කිරීමට;
  • විධාන කවචයේ ස්වයංක්‍රීයව සම්පූර්ණ කිරීම සඳහා සහය දැක්වීම සඳහා --සම්පූර්ණ විකල්පය එකතු කරන ලදී;
  • සම්පාදක රෝග විනිශ්චයට දැන් රේඛා අංක ඇතුළත් වේ (-fno-diagnostics-show-line-numbers) සහ
    තොරතුරු වර්ගය (fno-diagnostics-show-labels);
  • එකතු කරන ලද විකල්පය -fdiagnostics-format=json JSON ආකෘතියෙන් රෝග විනිශ්චය ප්‍රතිදානය කිරීමට;
  • පෙළගැස්ම සඳහන් කිරීම සඳහා විකල්ප (-falign-කාර්යයන්, උදාහරණයක් ලෙස) දැන් පෙළගැස්වීමේ විකල්ප කිහිපයක් පිළිගත හැකිය;
  • ගොනු ලැයිස්තුව පෙරීම සඳහා විකල්ප එකතු කරන ලදී (-fprofile-පෙරහන්-ගොනු, -fprofile-exclude-ගොනු), පැතිකඩකරු විසින් උපකරණය කරන ලද;
  • AddressSanitizer දැන් තොගයේ ඇති විචල්‍යවලට වලංගු නොවන ප්‍රවේශයන් අල්ලා ගැනීමට වඩාත් සංයුක්ත පෙළගැස්ම භාවිතා කරයි;
  • බොහෝ නිමැවුම් වැඩිදියුණු කිරීම් -fopt-තොරතුරු;
  • එකතු කරන ලද විකල්පය -fsave-optimization-record ප්‍රශස්තිකරණ වාර්තාව ගොනුවකට සුරැකීමට;
  • එකතු කරන ලද විකල්පය -fipa-stack-alignment и -fipa-යොමු-ආමන්ත්‍රණය කළ හැකි.
නව බිල්ට් විශේෂාංග
නව ගුණාංගය
වෙනත්

බොහෝ කේත උත්පාදන වැඩිදියුණු කිරීම් සම්බන්ධව:

  • ස්විච් ඉදිකිරීම් උත්පාදනය;
  • අන්තර් ක්රියා පටිපාටි ප්රශස්තකරණයන්;
  • පැතිකඩ තොරතුරු මත පදනම්ව ප්රශස්තකරණය;
  • එකලස් කිරීමේ අදියරේදී ප්රශස්තකරණය (LTO);

එසේම gcov හි අභ්‍යන්තර ආකෘතිය දැන් JSON වන අතර නව විකල්පය වේ --උණුසුම්-වර්ණ භාවිතා කරන්න ඒවා භාවිතා කරන වාර ගණන මත පදනම්ව කේත රේඛා වර්ණ ගැන්වීම ඇතුළත් වේ.

භාෂා

ක්රියාත්මක කිරීමේ ගුණාත්මකභාවය සහ සම්පූර්ණත්වය OpenACC C, C++, සහ Fortran යන භාෂා තවදුරටත් දියුණු වෙමින් පවතී.

C වැනි භාෂා
  • OpenMP 5.0 සඳහා අර්ධ සහාය ක්රියාත්මක කර ඇත;
  • එකතු කරන ලද කාර්යය __builtin_convertvector;
  • අනතුරු ඇඟවීමක් එකතු කරන ලදී --ඇසුරුම්-සාමාජිකයාගේ ඇඳුම;
  • පවතින අනතුරු ඇඟවීම් ගණනාවකට වැඩි දියුණු කිරීම්;
  • මැක්‍රෝ එකකට වැරදි තර්ක සංඛ්‍යාවක් යැවීමේදී දෝෂ පෙළට දැන් මැක්‍රෝවේ ප්‍රකාශය ඇතුළත් වේ;
  • මුද්‍රණ දෝෂ නිවැරදි කිරීමේ යෝජනා සඳහා වැඩි දියුණු කිරීම්.
C
  • -std=c2x (අනාගත C සම්මත) සඳහා එක් තර්කයක් සමඟ _Static_assert සහාය;
  • නව අනතුරු ඇඟවීමක් - නිරපේක්ෂ අගය, abs() වැනි ශ්‍රිත සඳහා වැරදි තර්ක වර්ගය අල්ලා ගනී.
සී ++
  • නව අනතුරු ඇඟවීම්: -අවසාරණය කරන ලද-පිටපත,
    -Winit-list-ජීවිත කාලය,
    - අනවශ්‍ය චලනය,
    -Wpessimizing-move,
    -Wclass-පරිවර්තනය;
  • අනාගත ප්‍රමිතියෙන් නව විශේෂාංග ක්‍රියාත්මක කිරීමට කටයුතු කරමින් පවතී C++2a;
  • ප්‍රපාතය දැන් ප්‍රභව කේත මූලද්‍රව්‍ය ගණනාවක් පිළිබඳ වඩාත් නිවැරදි තොරතුරු ගබඩා කරයි, එමඟින් ඔබට රෝග විනිශ්චය කිරීමේදී වඩාත් සවිස්තරාත්මක තොරතුරු ප්‍රදර්ශනය කිරීමට ඉඩ සලසයි;
  • අධි බර වූ කාර්යයන්, ද්විමය ක්‍රියාකරුවන්, ශ්‍රිත ඇමතුම් සහ ආකෘති තන්තු සඳහා වැඩි දියුණු කළ රෝග විනිශ්චය;
  • ජනප්‍රිය දෝෂ ගණනාවක් සඳහා (අතුරුදහන් වරහන්, නාම අවකාශයන්, යතුරු ලියනය වැරදි ආදිය) සඳහා සමහර සංවර්ධන පරිසරයන් විසින් සහාය දක්වන ස්වයංක්‍රීය නිවැරදි කිරීම් එකතු කරන ලදී.
libstdc++
  • C++17 ක්‍රියාත්මක කිරීම තවදුරටත් පර්යේෂණාත්මක නොවේ;
  • සමාන්තර ඇල්ගොරිතම එකතු කරන ලදි, , , ඒ තවදුරටත් -lstdc++fs අවශ්‍ය නොවේ;
  • C++2a සඳහා වැඩිදියුණු කළ පර්යේෂණාත්මක සහාය ( , , std::bind_front, etc.);
  • අකුරු නොවන අක්ෂර අඩංගු වන වින්ඩෝස් හි ගොනු ප්‍රවාහ විවෘත කිරීම සඳහා සහාය;
  • මූලික සහාය වින්ඩෝස් මත;
  • TS ජාලකරණය සඳහා මූලික සහාය.
D

D භාෂා අනුවාදය 2.076 GCC හි ඇතුළත් වේ.

ෆෝට්රාන්
  • අසමමුහුර්ත I/O සඳහා පූර්ණ සහාය;
  • MINLOC සහ MAXLOC සඳහා ක්‍රියාත්මක කළ BACK තර්කය;
  • FINDLOC සහ IS_CONTIGUS ශ්‍රිත ක්‍රියාත්මක කරන ලදී;
  • සංකීර්ණ සංඛ්‍යාවල සංරචක වෙත ප්‍රවේශ වීම සඳහා වාක්‍ය ඛණ්ඩය ක්‍රියාත්මක කර ඇත: c%re සහ c%im;
  • ක්‍රියාත්මක කරන ලද වාක්‍ය ඛණ්ඩය str%len සහ a%kind;
  • ක්‍රියාත්මක කළ C විස්තර සහ ISO_Fortran_binding.h ශීර්ෂකය;
  • එක් තර්කයක් NaN වන විට MAX සහ MIN ශ්‍රිතවල ප්‍රතිඵලය සඳහා ලිහිල් අවශ්‍යතා;
  • එකතු කරන ලද විකල්පය -fdec-ඇතුළත්;
  • විධානය එකතු කරන ලදී බිල්ටින්.
libgccjit

වෙනත්

බොහෝ ගෘහ නිර්මාණ ශිල්පය- සහ OS-විශේෂිත වෙනස්කම්.

මූලාශ්රය: linux.org.ru

අදහස් එක් කරන්න