GCC 9.1


GCC 9.1

U 3 di maghju hè stata a prima liberazione publica di a novena versione di GCC: GCC 9.1.
Cuntene assai megliurenze è aghjunte significativu cumparatu cù l'ottu
versione.

Cambiamenti generali

Opzioni
Nove funzioni integrate
Novu attributu
Altru

Numerose migliure di generazione di codice ligati à:

  • generazione di custruzzioni di switch;
  • ottimisazioni inter-prucedurali;
  • ottimisazione basatu annantu à l'infurmazioni di prufilu;
  • ottimisazione à u stadiu di l'assemblea (LTO);

Ancu u formatu internu di gcov hè avà JSON, è a nova opzione --utilizate-caldi-culori implica linee di culore di codice basatu nantu à quantu spessu sò usati.

Lingue

Qualità è cumpleta di l'implementazione OpenACC e lingue C, C++, è Fortran cuntinueghjanu à migliurà.

lingue C-like
  • U supportu parziale per OpenMP 5.0 hè statu implementatu;
  • Funzione aghjuntu __builtin_convertvector;
  • Avvisu aghjuntu -Address-di-membru-imballatu;
  • Migliuramentu à una quantità di avvisi esistenti;
  • U testu d'errore quandu passa u numeru sbagliatu di argumenti à una macro include avà a dichjarazione di a macro stessa;
  • Migliure à i suggerimenti di correzione di typo.
C
  • Supportu _Static_assert cun un argumentu per -std = c2x (futuru standard C);
  • Novu avvisu -Wabsolute-value, chì cattura u tipu d'argumentu sbagliatu per e funzioni cum'è abs ().
C ++
  • Novi avvisi: -Wdeprecated-copia,
    - Winit-list-lifetime,
    -Wredundant-move,
    -Wpessimizing-move,
    -Wclass-cunversione;
  • U travagliu hè in corso per implementà e funzioni novi da u futuru standard C ++ 2a;
  • U frontend guarda avà infurmazione più precisa nantu à una quantità di elementi di codice fonte, chì permette di vede infurmazione più dettagliata in diagnostichi;
  • Diagnostica mejorata per funzioni sovraccarichi, operatori binari, chjama di funzione è stringhe di furmatu;
  • Aghjunghjite correzioni automatiche supportate da certi ambienti di sviluppu per una quantità di errori populari (parentesi mancanti, spazii di nomi, typos, etc.).
libstdc++
  • L'implementazione C++ 17 ùn hè più sperimentale;
  • Aggiunti algoritmi paralleli, , , A ùn hè più bisognu di -lstdc++fs;
  • Supportu sperimentale migliuratu per C ++ 2a ( , , std::bind_front, etc.);
  • Supportu per l'apertura di flussi di fugliale in Windows chì i percorsi cuntenenu caratteri non-char;
  • Supportu iniziale nantu à Windows;
  • Supportu iniziale per Networking TS.
D

A versione di lingua D 2.076 hè inclusa in GCC.

Fortran
  • Supportu cumpletu per l'I/O asincronu;
  • Argumentu BACK implementatu per MINLOC è MAXLOC;
  • Implementate funzioni FINDLOC è IS_CONTIGOUS;
  • A sintassi per accede à i cumpunenti di numeri cumplessi hè stata implementata: c%re è c%im;
  • Sintassi implementata str%len è a%kind;
  • Descriptori C implementati è ISO_Fortran_binding.h header;
  • I requisiti per u risultatu di e funzioni MAX è MIN sò stati rilassati quandu unu di l'argumenti hè NaN;
  • Opzione aghjuntu -fdec-include;
  • A direttiva aghjunta CUSTRU.
libgccjit

Altru

Parechji cambiamenti specifichi di l'architettura è OS.

Source: linux.org.ru

Add a comment