Le 7 août a eu lieu la sortie de GCC 16.2 — la deuxième version stable de la branche GCC 16. Cette nouvelle version est principalement corrective : les développeurs l'appellent directement une version de correction de bogues, contenant des corrections des régressions trouvées dans GCC 16.1 par rapport aux versions précédentes.
Au total, après GCC 16.1 d'avril, 102 bogues connusont été corrigés. Les corrections concernent divers composants du compilateur et les architectures supportées ; il n'y a pas de changement majeur déterminant la version.
GCC 16.2 n'est pas une nouvelle version fonctionnelle : les principales fonctionnalités de la branche GCC 16 sont apparues dès GCC 16.1, sorti le 30 avril. Parmi les changements les plus notables de cette branche :
- C++20 est devenu le mode C++ par défaut au lieu de GNU++17. Pour utiliser le comportement précédent, il est désormais nécessaire de spécifier explicitement le paramètre correspondant -std=. Le support expérimental des modules C++20 reste activé séparément.
- L'intégration de C++26se poursuit, y compris le support expérimental de la réflexion statique, des contrats, des exceptions constexpr et d'autres propositions de la future norme.
- GCC inclut un compilateur expérimental pour le langage Algol 68 — ga68.
- Pour x86, le support des processeurs AMD Zen 6 (-march=znver6), Intel Wildcat Lake et Nova Lake a été ajouté. L'auto-vecteurisation a été améliorée lors de l'utilisation d'AVX-512.
- Dans l'implémentation AArch64, le support de Armv9.6-A, Apple M4 et M5, NVIDIA GB10 et de nouveaux cœurs de processeur Arm a été ajouté ; la possibilité d'appliquer l'extension de marquage de mémoire via -fsanitize=memtag a également été ajoutée.
- Pour le offloading sur GPU, AMD a considérablement réduit les coûts d'exécution des sections OpenMP/OpenACC et a ajouté un support expérimental pour les accélérateurs AMD Instinct MI300 (gfx942).
Ainsi, GCC 16.2 est principalement destiné aux utilisateurs souhaitant passer à une nouvelle branche après la correction des régressions détectées après la première version. Les sources de GCC 16.2 sont disponibles sur les miroirs officiels du projet. GCC est distribué en tant que logiciel libre de la famille GNU ; le code source principal du compilateur est sous licence GPLv3+, tandis qu'un certain nombre de bibliothèques runtime sont soumises à l'exception de la bibliothèque runtime GCC.
Source : linux.org.ru
