GCC 9.1

Gegužės 3 d. įvyko pirmasis viešas devintosios GCC versijos išleidimas: GCC 9.1.
Jame yra daug reikšmingų patobulinimų ir papildymų, palyginti su aštuntuoju
версией.

Bendrieji pokyčiai

Galimybės
Naujos įmontuotos funkcijos
Naujas atributas
Kitas

Daugybė kodo generavimo patobulinimų, susijusių su:

  • jungiklių konstrukcijų generavimas;
  • procedūrų optimizavimas;
  • optimizavimas remiantis profiliavimo informacija;
  • optimizavimas surinkimo etape (LTO);

Taip pat gcov vidinis formatas dabar yra JSON ir nauja parinktis --naudokite karštumo spalvas apima kodo eilučių spalvinimą pagal tai, kaip dažnai jos naudojamos.

Kalbos

Įgyvendinimo kokybė ir išsamumas OpenACC C, C++ ir Fortran kalbos toliau tobulėja.

C tipo kalbos
  • Įdiegtas dalinis OpenMP 5.0 palaikymas;
  • Pridėta funkcija __builtin_convertvector;
  • Pridėtas įspėjimas -Supakuoto nario vata;
  • Daugelio esamų įspėjimų patobulinimai;
  • Klaidos tekstas, kai makrokomandai perduodamas netinkamas argumentų skaičius, dabar apima pačios makrokomandos deklaraciją;
  • Rašybos klaidų taisymo pasiūlymų patobulinimai.
C
  • Palaikykite _Static_assert su vienu argumentu -std=c2x (būsimasis C standartas);
  • Naujas įspėjimas -Absoliutinė vertė, kuris sugauna netinkamą argumentų tipą tokioms funkcijoms kaip abs().
C + +
  • Nauji įspėjimai: -Nebenaudojama kopija,
    - Winit-list - visą gyvenimą,
    -Nenaudingas judesys,
    -Pesimizing-judėti,
    -Wclass konversija;
  • Vykdomas darbas siekiant įdiegti naujas būsimo standarto funkcijas C++2a;
  • Dabar priekinėje programoje saugoma tikslesnė informacija apie daugybę šaltinio kodo elementų, o tai leidžia rodyti išsamesnę diagnostikos informaciją;
  • Patobulinta perkrautų funkcijų, dvejetainių operatorių, funkcijų iškvietimų ir formatų eilučių diagnostika;
  • Pridėtos automatinės kai kurių kūrimo aplinkų palaikomos daugelio populiarių klaidų pataisos (trūkstamų skliaustų, vardų erdvių, rašybos klaidų ir kt.).
libstdc++
  • C++17 diegimas nebėra eksperimentinis;
  • Pridėta lygiagrečių algoritmų, , , A nebereikia -lstdc++fs;
  • Patobulintas eksperimentinis C++2a palaikymas ( , , std::bind_front ir kt.);
  • Palaikymas atidarant failų srautus sistemoje Windows, kurių keliuose yra simbolių be simbolių;
  • Pradinė parama „Windows“ sistemoje;
  • Pradinis Networking TS palaikymas.
D

D kalbos versija 2.076 įtraukta į GCC.

Fortranas
  • Visiškas asinchroninio I/O palaikymas;
  • Įdiegtas MINLOC ir MAXLOC argumentas BACK;
  • Įdiegtos FINDLOC ir IS_CONTIGOUS funkcijos;
  • Įdiegta kompleksinių skaičių komponentų prieigos sintaksė: c%re ir c%im;
  • Įdiegta sintaksė str%len ir a%kind;
  • Įdiegti C deskriptoriai ir ISO_Fortran_binding.h antraštė;
  • Sušvelninti MAX ir MIN funkcijų rezultato reikalavimai, kai vienas iš argumentų yra NaN;
  • Pridėta parinktis -fdec-include;
  • Pridėta direktyva PASTATYMAS.
libgccjit

Kitas

Daugelis architektūros ir OS pakeitimų.

Šaltinis: linux.org.ru

Добавить комментарий