GCC 9.1


GCC 9.1

Den 3 maj slÀpptes den första offentliga versionen av GCC 9.1.
Den innehÄller mÄnga betydande förbÀttringar och tillÀgg jÀmfört med version Ätta.
versionen.

AllmÀnna Àndringar

Alternativ
Nya inbyggda funktioner
Ny attribut
Annat

MÄnga förbÀttringar av kodgenereringen relaterade till:

  • generering av switch-konstruktioner;
  • grĂ€nsöverskridande optimeringar;
  • optimering baserad pĂ„ profilinformation;
  • optimering under byggprocessen (LTO);

Det interna formatet för gcov Ă€r nu JSON, och det nya alternativet —use-hotness-colors aktiverar fĂ€rgning av kodrader beroende pĂ„ hur ofta de anvĂ€nds.

SprÄk

Kvalitet och fullstÀndighet av implementeringen OpenACC i sprÄk C, C++ och Fortran fortsÀtter att förbÀttras.

C-liknande sprÄk
  • Delvis stöd för OpenMP 5.0 har implementerats;
  • Funktionalitet har lagts till __builtin_convertvector;
  • Ett nytt varningsmeddelande har lagts till -Waddress-of-packed-member;
  • FörbĂ€ttringar i flera befintliga varningar;
  • Felmeddelandet vid överlĂ€mnande av fel antal argument till makrot inkluderar nu deklarationen av sjĂ€lva makrot;
  • FörbĂ€ttringar i förslag för att rĂ€tta stavfel.
C
  • Stöd för _Static_assert med ett argument för -std=c2x (den framtida C-standarden);
  • Ett nytt varningsmeddelande -Wabsolute-value, som fĂ„ngar felaktig typ av argument för funktioner som abs().
C++
  • Nya varningar: -Wdeprecated-copy,
    -Winit-list-lifetime,
    -Wredundant-move,
    -Wpessimizing-move,
    -Wclass-conversion;
  • Arbetet med att implementera nya möjligheter frĂ„n den framtida standarden pĂ„gĂ„r C++ 2a;
  • Frontend sparar nu mer exakt information om en rad element i kĂ€llkoden, vilket möjliggör visning av mer detaljerad information i diagnostik;
  • Diagnostik för överlagrade funktioner, binĂ€ra operatörer, funktionsanrop och formatteringsstrĂ€ngar har förbĂ€ttrats;
  • Automatiska korrigeringar för en rad vanliga fel (saknade parenteser, namnrymder, stavfel etc.) har lagts till och stöds av vissa utvecklingsmiljöer.
libstdc++
  • Implementeringen av C++17 Ă€r inte lĂ€ngre experimentell;
  • Parallella algoritmer har lagts till, <execution>, <memory_resource>, och <filesystem> krĂ€ver inte lĂ€ngre -lstdc++fs;
  • Experimentellt stöd för C++ 2a (<bit>, <version>, std::bind_front etc.) har förbĂ€ttrats;
  • Stöd för att öppna filströmmar pĂ„ Windows vars vĂ€gar innehĂ„ller tecken utanför char;
  • Inledande stöd för <filesystem> pĂ„ Windows;
  • Inledande stöd för Networking TS.
D

D-sprÄk version 2.076 ingÄr i GCC.

Fortran
  • Fullt stöd för asynkron in- och utmatning;
  • Argumentet BACK har implementerats för MINLOC och MAXLOC;
  • Funktionerna FINDLOC och IS_CONTIGUOUS har implementerats;
  • Syntax för att komma Ă„t komponenter i komplexa tal: c%re och c%im har implementerats;
  • Syntax för str%len och a%kind har implementerats;
  • C-deskriptörer och rubriken ISO_Fortran_binding.h har implementerats;
  • Krav pĂ„ resultatet av funktionerna MAX och MIN har lĂ€ttats nĂ€r ett av argumenten Ă€r NaN;
  • Ett alternativ har lagts till -fdec-include;
  • Direktiv tillagt BUILTIN.
libgccjit

Annat

MÄnga arkitektur- och OS-specifika förÀndringar.

KĂ€lla: linux.org.ru

Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster