GCC 9.1


GCC 9.1

3. mai toimus GCC 9.1 esimene avalik versioon.
See sisaldab mitmeid olulisi parandusi ja lisandeid vÔrreldes kaheksanda
versiooniga.

Üldised muudatused

Valikud
  • KĂ€skude, mis vĂ”tavad suuruse vastu, toetavad nĂŒĂŒd 64-bitiseid vÀÀrtusi ja sufikseid suuruse nĂ€itamiseks;
  • Lisatud on vĂ”imalus -flive-patching, et juhtida optimeerimisi, mis vĂ”ivad olla potentsiaalselt kahjulikud dĂŒnaamilise koodi vahetamiseks;
  • Lisatud on valik —completion automaatse tĂ€iendamise toetamiseks kĂ€sureas;
  • Kompilaatori diagnostika sisaldab nĂŒĂŒd rea numbreid (-fno-diagnostics-show-line-numbers) ja
    teave tĂŒĂŒpide kohta (fno-diagnostics-show-labels);
  • Lisatud on vĂ”imalus -fdiagnostics-format=json diagnostika vĂ€ljundiks JSON formaadis;
  • Valikud joondamise mÀÀramiseks (-falign-functions, nĂ€iteks) saavad nĂŒĂŒd kaht joondamisvĂ”imalust;
  • Lisatud on valikud failide nimekirja filtreerimiseks (-fprofile-filter-files, -fprofile-exclude-files), mis allutatakse profiliisisalduse instrumenteerimisele;
  • AddressSanitizer kasutab nĂŒĂŒd vĂ€henenud joondamist toimetundmatute ĂŒlekaalute puhul muutujate jaoks, mis on vĂ€ljendatud virnas;
  • Mitmed tĂ€iustused vĂ€ljundis -fopt-info;
  • Lisatud on vĂ”imalus -fsave-optimization-record optimeerimisaruande salvestamiseks faili;
  • Lisatud on vĂ”imalus -fipa-stack-alignment ja -fipa-reference-addressable.
Uued sisseehitatud funktsioonid
Uus atribuut
Teine

Mitmed parandused koodigeneratsioonis, mis on seotud:

  • switch-konstruktsioonide genereerimisega;
  • vaheprotseduuriliste optimeerimistega;
  • optimeerimisega, mis pĂ”hineb profiliseerimisinfos;
  • koosteetapiga optimeerimisega (LTO);

Samuti on gcov sisemine formaat nĂŒĂŒd JSON, ja uus valik —use-hotness-colors lisab koodirea vĂ€rvimise sĂ”ltuvalt nende kasutamise sagedusest.

Keeled

Rakenduse kvaliteet ja tÀpsus OpenACC keeltes C, C++ ja Fortran jÀtkab paranemist.

C-sarnased keeled
  • Osaline toetus OpenMP 5.0 on realiseeritud;
  • Lisatud on funktsioon __builtin_convertvector;
  • Lisatud on hoiatus -Waddress-of-packed-member;
  • Mitmed parandused olemasolevates hoiatustes;
  • Viga teate pane olevatest makrode vale arvu argumentide edastamisest sisaldab nĂŒĂŒd ka makro enda deklaratsiooni;
  • Parandused Ă”igekirja parandamise ettepanekutes.
C
  • _Static_assert toetamine ĂŒhe argumendiga -std=c2x (tulevane standard C);
  • Uus hoiatus -Wabsolute-value, mis tabab vale tĂŒĂŒpi argumente selliste funktsioonide nagu abs().
C++
  • Uued hoiatuste: -Wdeprecated-copy,
    -Winit-list-lifetime,
    -Wredundant-move,
    -Wpessimizing-move,
    -Wclass-conversion;
  • Töötatakse vĂ€lja uusi vĂ”imalusi tulevasest standardist C++ 2a;
  • Frontend salvestab nĂŒĂŒd tĂ€psema teabe mitmete lĂ€htekoodi elementide kohta, mis vĂ”imaldab diagnostikas kuvada detailsemat teavet;
  • Parandatud diagnostikat ĂŒlekoormatud funktsioonide, binaarsete operaatorite, funktsioonikutsede ja formaati mÀÀravate stringide jaoks;
  • MĂ”nede arenduskeskkondade poolt toetatud automaatsed parandused mitmete populaarsete vigade (puuduvad sulud, nimed, trĂŒkivigade jms) jaoks;
libstdc++
  • C++17 rakendamine ei ole enam eksperimentaalne;
  • Lisatud paralleelsed algoritmid, , , ja ei vaja enam -lstdc++fs;
  • Parandatud eksperimentaalset tuge C++ 2a jaoks (, , std::bind_front jne);
  • Toetatakse failivoogude avamist Windowsis, mille teed sisaldavad mĂ€rke, mis ĂŒletavad char-i piire;
  • Alustav tugi jaoks Windowsis;
  • Alustav tugi Networking TS.
D

D-keele versioon 2.076 on lisatud GCC-sse.

Fortran
  • TĂ€ielik tugi asĂŒnkroonsele sisend-/vĂ€ljundile;
  • Rakendatud BACK argument MINLOC ja MAXLOC jaoks;
  • Rakendatud FINDLOC ja IS_CONTIGUOUS funktsioonid;
  • Rakendatud sĂŒntaks ligipÀÀsuks kompleksnumberite koostisosadele: c%re ja c%im;
  • Rakendatud sĂŒntaks str%len ja a%kind;
  • Rakendatud C-deskriptorid ja pealkiri ISO_Fortran_binding.h;
  • VĂ€hendatud nĂ”udeid MAX ja MIN funktsioonide tulemusele, kui ĂŒks argument on NaN;
  • Lisatud on vĂ”imalus -fdec-include;
  • Lisatud direktiiv BUILTIN.
libgccjit

Teine

Palju arhitektuuri- ja operatsioonisĂŒsteemi spetsiifilisi muudatusi.

Allikas: linux.org.ru

Osta usaldusvÀÀrne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebimajutus DDoS-kaitsega veebisaitidele, VPS VDS serverid - ProHoster