В Clang доведена до готовности поддержка стандарта C++11 и приняты патчи для пересборки ядра Linux
20 апреля 2013 года
Развиваемый в рамках проекта LLVM компилятор Clang отметил важный рубеж в своём развитии - полностью завершена реализация поддержки всех компонентов стандарта C++11. Статус полной совместимости с C++11 был достигнут после обеспечения поддержки таких ранее недоступных возможностей, как наследование конструкторов и ключевое слово thread_local. Примечательно, что проектом GCC реализация стандарта C++11 ещё не завершена.
Завершив интеграцию элементов стандарта C++11 разработчики Clang намерены приступить к реализации возможностей, предложенных для включения в будущий стандарт C++1y, выход которого ожидается в 2014 году под именем C++14. Из частично реализованных в Clang элементов C++1y отмечается поддержка бинарных литералов, динамически расширяемых массивов, инициализаторов и аргераторов членов классов, системы адаптивного распределения памяти. Из планируемых к реализации возможностей упомянуты обобщённые лямбда-выражения, автоопределение типа возвращаемых функцией значений, расширенная реализация элемента constexpr. Связанные с C++1y возможности по умолчанию не доступны и требуют явного указания флага "-std=c++1y".
Из связанных с LLVM и C++11 событий можно также упомянуть представленный компанией Intel отчёт о развитии проекта C++11 Migrator, в рамках которого на базе LLVM разрабатывается инструментарий для автоматического преобразования кода C++ в вид, соответствующий спецификации C++11.
Одновременно можно отметить успехи проекта LLVMLinux, нацеленного на обеспечение сборки ядра Linux с использованием компилятора Clang. По словам (Архивная копия от 7 сентября 2015 на Wayback Machine) разработчиков проект уже очень близок к состоянию, когда немодифицированное ядро можно будет пересобрать штатным компилятором Clang. До сих пор для подобной сборки требовалось применение серии патчей, как к ядру, так и к Clang. Будущий выпуск LLVM/Clang 3.3 потребует применения лишь нескольких патчей для ядра Linux, все требуемые для Clang патчи приняты в upstream.
Источники править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.