Вчера был анонсирован новый крупный выпуск набора свободных компиляторов проекта GNU — GCC 7.1. Релиз приурочен к 30-летию с момента релиза GNU Compiler Collection 1.0 (состоялся 23 мая 1987 года).
GCC 7.1 — первый крупный релиз из ветки 7.x, содержащий новые возможности, которых не было в GCC 6.x и более ранних версиях. Среди наиболее значимых изменений, представленных в обновлении свободных компиляторов от проекта GNU, можно выделить следующие:
во фронтенде языка C++ добавлена экспериментальная поддержка всех возможностей нового (пока ещё чернового) стандарта C++17 (включается с помощью -std=c++1z и -std=gnu++1z), а в библиотеке libstdc++ реализовано большинство возможностей C++17;
диагностика допускаемых в коде ошибок стала более развитой, получив дополнительные проверки и вывод новых предупреждений в ряде ситуаций;
значительные улучшения в оптимизиторах;
Address Sanitizer теперь сообщает об использовании переменных вне области их видимости;
многочисленные улучшения, помогающие обнаружить переполнение буфера и другие виды некорректных обращений к памяти для семейства языков C;
расширения Cilk+ для языков C и C++ объявлены устаревшими;
возможность конфигурации GCC для использования OpenMP 4.5, чтобы перенести вычисления на видеопроцессоры NVIDIA (PTX в CUDA);
для новых целевых платформ GCC по умолчанию использует свой новый распределитель регистров (LRA, local register allocator);
добавлена поддержка стандарта отладочной информации DWARF 5;
добавлена поддержка обработки файлов BRIG 1.0 — бинарного формата, используемого для HSAIL (Heterogeneous System Architecture Intermediate Language);
полная реализация пользовательских пакетов Go 1.8.1;
Java-фронтенд (GCJ) и связанная с ним runtime-библиотека libjava удалены из GCC;
улучшения в поддержке архитектуры ARM: ARMv8.2-A и ARMv8.2-A 16-bit Floating-Point Extensions, ARMv8.3-A, а также ряда процессоров (включая ARM Cortex-A73, Broadcom Vulcan, Qualcomm Falkor);
добавлена поддержка набора инструкций RISC-V;
добавлена поддержка операционной системы Fuchsia OS.
Информация о портировании кода на GCC 7 представлена в этом документе.
Онлайн-сервис аренды жилья Airbnb объявил о своём очередном приобретении — на сей раз была поглощена компания Deco Software, известная разработкой интегрированной среды разработки для создания приложений на React Native.
В Deco Software работали 5 программистов, занимающихся созданием приложений на базе фреймворка React Native, разработанного в Facebook для построения современных веб- и мобильных приложений на языке JavaScript (React — это библиотека для него). Все сотрудники продолжат работу в Airbnb, которая использует React в своих интерфейсах. Главное их детище — Deco IDE — больше поддерживаться не будет, но авторы позаботились о том, чтобы сохранить ему жизнь, опубликовав исходный код для сообщества.
Репозиторий Deco IDE доступен на GitHub под свободной лицензией GNU AGPL v3.0. К сожалению, для его использования в разработке на данный момент официально поддерживается только операционная система Mac OS X. Сайт проекта — www.decoide.org.