Maiatzaren 3an, GCCren bederatzigarren bertsioaren lehen bertsio publikoa egin zen: GCC 9.1.
Hobekuntza eta gehigarri esanguratsu asko ditu zortzigarrenarekin alderatuta
bertsioa.
Aldaketa orokorrak
aukera
- Tamaina onartzen duten komandoek orain 64 biteko balioak eta atzizkiak onartzen dituzte tamaina zehazteko;
- Aukera gehitua -flive-patching,Kodeen ordezkapen dinamikoarentzat suntsigarriak izan daitezkeen optimizazioak kontrolatzeko;
- Gehitu da --completion aukera komandoen shellean auto-osaketa onartzeko;
- Konpiladoreen diagnostikoek lerro-zenbakiak barne hartzen dituzte (-fno-diagnostics-show-line-numbers) Eta
motako informazioa (fno-diagnostics-show-labels); - Aukera gehitua -fdiagnostics-format=json diagnostikoak JSON formatuan ateratzeko;
- Lerrokatzea zehazteko aukerak (-falign-funtzioak, adibidez) orain lerrokatze aukera pare bat onar ditzake;
- Fitxategien zerrenda iragazteko aukerak gehitu dira (-fprofile-filter-fitxategiak, -fprofile-exclude-fitxategiak), profilatzaileak instrumentatzen dituenak;
- AddressSanitizer-ek orain lerrokatze trinkoagoa erabiltzen du pilako aldagaietarako sarbide baliogabeak harrapatzeko;
- Irteera hobekuntza ugari -fopt-info;
- Aukera gehitua -fsave-optimization-record optimizazio-txostena fitxategi batean gordetzeko;
- Aukera gehitua -fipa-pila-lerrokatzea ΠΈ -fipa-erreferentzia-helbidea.
Ezaugarri barneratu berriak
Atributu berria
Beste
Kodea sortzeko hobekuntza ugari hauekin lotuta:
- etengailuen eraikuntzak sortzea;
- prozedura arteko optimizazioak;
- profilaren informazioan oinarritutako optimizazioa;
- optimizazioa muntaketa fasean (LTO);
Gainera, gcov-en barne formatua JSON da orain, eta aukera berria --erabildu-berotasun-koloreak kode-lerroak margotzea dakar, zenbat maiztasunarekin erabiltzen diren.
Hizkuntzak
Ezarpenaren kalitatea eta osotasuna OpenACC C, C++ eta Fortran hizkuntzak hobetzen jarraitzen dute.
C antzeko hizkuntzak
- OpenMP 5.0rako euskarria partziala ezarri da;
- Ezaugarri gehitua __bihurtu_bektore;
- Abisu gehitua -Paketa-kidearen helbidea;
- Hobekuntzak dauden hainbat abisutan;
- Makro bati argumentu-kopuru okerra pasatzean errore-testuak makroaren beraren deklarazioa barne hartzen du orain;
- Akatsak zuzentzeko iradokizunen hobekuntzak.
C
- Onartu _Static_assert argumentu batekin -std=c2x (etorkizuneko C estandarra);
- Abisu berria -Wabsolutua-balioa, abs() bezalako funtzioetarako argumentu mota okerra hartzen duena.
C ++
- Abisu berriak: -Wdeshakituta-kopia,
-Irabazi-zerrenda-bizitza,
-Wredundant-mugimendua,
-Wpessimizing-mugimendua,
-Wklase-bihurketa; - Etorkizuneko estandarraren ezaugarri berriak ezartzeko lanean ari dira C++2a;
- Frontend-ak iturburu-kodeko elementu batzuen inguruko informazio zehatzagoa gordetzen du orain, eta horri esker, diagnostikoetan informazio zehatzagoa bistaratu dezakezu;
- Gainkargatutako funtzioen, operadore bitarren, funtzio-deien eta formatu-kateen diagnostiko hobetua;
- Garapen-ingurune batzuek onartzen dituzten konponketa automatikoak gehitu dira akats ezagun batzuentzat (parentesiak, izen-eremuak, akatsak, etab.).
libstdc++
- C++17 inplementazioa jada ez da esperimentala;
- Algoritmo paraleloak gehitu dira, , , A jada ez du -lstdc++fs behar;
- C++2a-rako euskarri esperimental hobetua ( , , std::bind_front, etab.);
- Windows-en fitxategi-korronteak irekitzeko laguntza, zeinen bideak karaktereak ez diren karaktereak dituzten;
- Hasierako laguntza Windows-en;
- Networking TSrako hasierako laguntza.
D
D hizkuntzaren 2.076 bertsioa sartzen da GCCn.
Fortran
- I/O asinkronoetarako laguntza osoa;
- MINLOC eta MAXLOC-entzako BACK argumentua inplementatu da;
- FINDLOC eta IS_CONTIGOUS funtzioak inplementatu dira;
- Zenbaki konplexuen osagaietara sartzeko sintaxia inplementatu da: c%re eta c%im;
- str%len eta a%kind sintaxia inplementatu dira;
- C deskribatzaileak eta ISO_Fortran_binding.h goiburua inplementatu dira;
- MAX eta MIN funtzioen emaitzarako eskakizun lasaiak argumentuetako bat NaN denean;
- Aukera gehitua -fdec-include;
- Zuzentaraua gehitu da ERAIKITA.
libgccjit
- Ezaugarri gehitua gcc_jit_context_add_driver_option.
Beste
Arkitektura eta sistema eragilearen aldaketa asko.
Iturria: linux.org.ru