Релиз GCC 15.1 знаменует важный этап в развитии свободного набора компиляторов. Публикация версии сопровождается значительными улучшениями и поддержкой новых стандартов языка.
Основные изменения для C
Для языка C внедрён стандарт C23, который теперь используется по умолчанию. Это означает использование новых возможностей, таких как директива "#embed" для встроенных данных и новые атрибуты, такие как "unsequenced" и "reproducible".
Новые возможности включают поддержку переменных в конструкциях "if" и улучшенное управление именами циклов. Особое внимание уделяется обработке байтовых массивов и поддержке сложных чисел, что открывает новые горизонты для разработчиков.
Инновации в C++
Компилятор расширяет возможности работы с C++ стандартом, включая элементы будущих стандартов. Ключевые обновления касаются повышения удобства использования шаблонов и улучшения синтаксиса для модулей и атрибутов.
Реализован множественный набор новшеств, включая оператор "friend" и возможность "constexpr" для выделения памяти во время компиляции. Также была введена поддержка новых атрибутов и модификаций для работы с массивами и параметрами функций.
Оптимизация и поддержка архитектур
GCC 15.1 предлагает существенные оптимизации, связанные с векторизацией циклов и улучшенной обработкой больших файлов. Поддержка новых архитектур включает обновления для платформ AArch64 и x86 с новым набором процессоров от Intel и ARM.
При инкрементальной оптимизации на этапе связывания добавлена возможность существенно сокращать время сборки, особенно в контексте облачных решений и KVM хостинга.
Заключение
Обновления в GCC 15.1 делают набор компиляторов ещё более мощным инструментом для разработчиков. Эти изменения не только расширяют функциональные возможности языка, но и улучшают совместимость кода, сохраняя высокую производительность и адаптивность на различных платформах.