A ranar 3 ga Mayu, farkon fitowar jama'a na sigar GCC ta tara ya faru: GCC 9.1.
Ya ƙunshi gyare-gyare masu mahimmanci da ƙari da yawa idan aka kwatanta da na takwas
sigar.
Janar canje -canje
Zaɓuɓɓuka
- Dokokin da suka karɓi girman yanzu suna goyan bayan ƙimar 64-bit da ƙari don tantance girman;
- Ƙara wani zaɓi - faci-fatsi,don sarrafa abubuwan haɓakawa waɗanda ke da yuwuwar lalatawa zuwa ƙarfi, maye gurbin lambar;
- Ƙara --zaɓin kammalawa don tallafawa cikawa ta atomatik a cikin harsashin umarni;
- Binciken masu tarawa yanzu sun haɗa da lambobin layi (-fno-diagnostics-show-line-lambobin) da kuma
irin bayanin (fno-diagnostics-show-labels); - Ƙara wani zaɓi -fdiagnostics-format=json don fitar da bincike a cikin tsarin JSON;
- Zaɓuɓɓuka don tantance daidaitawa (-faalign-ayyuka, misali) yanzu na iya karɓar zaɓuɓɓukan daidaitawa biyu;
- Ƙarin zaɓuɓɓuka don tace jerin fayiloli (-fprofile-filter-files, -fprofile-ban-fiyiloli), waɗanda aka yi amfani da su ta hanyar bayanin martaba;
- AddressSanitizer yanzu yana amfani da ƙarin daidaitawa don kama hanyoyin shiga mara kyau zuwa masu canji akan tari;
- Abubuwan haɓakawa da yawa -fopt-bayanai;
- Ƙara wani zaɓi -fsave- inganta-rikodi don adana rahoton ingantawa zuwa fayil;
- Ƙara wani zaɓi -fipa-tari-daidaitacce и -fipa-reference-magana.
Sabbin abubuwan ginannun
Sabuwar sifa
Sauran
Yawancin gyare-gyaren ƙirƙira code masu alaƙa da:
- Ƙirƙirar ginawa na sauyawa;
- inganta tsakanin tsarin;
- ingantawa dangane da bayanan martaba;
- ingantawa a matakin taro (LTO);
Hakanan tsarin gcov na ciki yanzu shine JSON, kuma sabon zaɓi --amfani-zafi-launi ya ƙunshi layukan launi masu launi dangane da yawan amfani da su.
Harsuna
inganci da cikar aiwatarwa BudeACC harsunan C, C++, da Fortran sun ci gaba da inganta.
Harsuna masu kama da C
- An aiwatar da wani ɓangare na tallafi don OpenMP 5.0;
- Ƙara fasalin __builtin_convertvector;
- Kara gargadi -Waddress-na-cushe-memba;
- Haɓakawa ga adadin gargaɗin da ke akwai;
- Rubutun kuskure lokacin aika da kuskuren adadin muhawara zuwa macro yanzu ya haɗa da ayyana macro da kansa;
- Haɓaka shawarwarin gyaran typo.
C
- Taimakawa _Static_assert tare da hujja ɗaya don -std = c2x (ma'aunin C na gaba);
- Sabon gargadi -Wabsolute-daraja, wanda ke kama nau'in hujja mara kyau don ayyuka kamar abs().
C ++
- Sabbin gargadi: -Kwafi-kwafi,
-Winit-jerin-rayuwa,
-Matsi-matsi,
-Wpessimizing-motsi,
-Wclass-canzawa; - Ana ci gaba da aiki don aiwatar da sabbin abubuwa daga ma'auni na gaba C++2a;
- Gaban gaba yanzu yana adana ƙarin cikakkun bayanai game da adadin abubuwan lambar tushe, wanda ke ba ku damar nuna ƙarin cikakkun bayanai a cikin bincike;
- Ingantattun bincike don ayyuka masu yawa, masu aiki na binary, kiran aiki da tsarin kirtani;
- Ƙara gyara ta atomatik wanda wasu mahallin ci gaba ke goyan bayan manyan kurakurai masu yawa (rasa bayanan ƙira, wuraren suna, bugu, da sauransu).
libstdc++
- Aiwatar da C++17 ba gwaji ba ne;
- Ƙara daidaitattun algorithms, , , A baya buƙatar -lstdc ++ fs;
- Ingantattun goyan bayan gwaji don C++2a ( , , std :: bind_gaba, da sauransu);
- Taimako don buɗe rafukan fayil akan Windows waɗanda hanyoyinsu ke ɗauke da haruffa marasa caja;
- Taimakon farko a kan Windows;
- Taimakon farko don Sadarwar TS.
D
D sigar harshe 2.076 yana cikin GCC.
Fortran
- Cikakken goyan baya ga I/O asynchronous;
- An aiwatar da hujjar BACK don MINLOC da MAXLOC;
- Aiwatar da ayyukan FINDLOC da IS_CONTIGOUS;
- An aiwatar da ma'auni don samun dama ga sassan lambobi masu rikitarwa: c% re da c% im;
- Aiwatar da syntax str%len da kuma% irin;
- Aiwatar da bayanan C da kuma ISO_Fortran_binding.h kan kai;
- Bukatun annashuwa don sakamakon ayyukan MAX da MIN lokacin da ɗayan muhawarar shine NaN;
- Ƙara wani zaɓi -fdec-hada;
- An ƙara umarni GINA.
libgccjit
- Ƙara fasalin gcc_jit_context_add_driver_option.
Sauran
Yawancin gine-gine- da takamaiman canje-canje.
source: linux.org.ru