Спустя намеченный год после выхода предыдущего мажорного выпуска «Коллекции компиляторов ГНУ» [0], увидел свет GCC 8.1. Разработчики обещают свежие возможности и более жесткую оптимизацию.
В частности они отмечают:
- Экспериментальную поддержку отдельный частей черновика стандарта C++2a в компиляторе, а равно и частей С++2a и окончательно всего C++17 [1] — в стандартной библиотеке.
- Улучшения в выводе диагностической информации в особенности в части позиций (в том числе в формате «от»-«до») и советов по исправлению ошибок; главнейшим образом это коснулось Си++. Новые предупреждения также не забыты.
- Повышено качество профилированной оптимизации (PGO); так на x86 функции теперь по-умолчанию делятся на «горячие» и «холодные» участки. При оптимизации во время компоновки теперь задействуется новый способ вывода отладочный сведений в DWARF, что делает оптимизированную программу более удобоотлаживаемой. Добавлены новые и улучшены существующие оптимизации для циклов.
- Компиляция для архитектуры aarch64 теперь умеет в Scalable Vector Extensions, куда входят в частности вектора с определяемой в процессе исполнения длиной.
Интересующимся более глубоко могут быть полезны полный перечень изменений [2], а также актуальный перечень значительных регрессий [3] в новом выпуске.
[0] https://gnu.org/s/gcc
[1] https://gcc.gnu.org/projects/cxx-status.html#cxx17
[2] https://www.gnu.org/software/gcc/gcc-8/changes.html
[3] https://gcc.gnu.org/bugzilla/buglist.cgi?bug_file_loc_type=allwordssubstr&...
>>> info-gnu@gnu.org