Представлен релиз проекта LLVM 3.6 (Low Level Virtual Machine) - GCC совместимого инструментария (компиляторы, оптимизаторы и генераторы кода), компилирующего программы в промежуточный биткод RISC подобных виртуальных инструкций (низкоуровневая виртуальная машина с многоуровневой системой оптимизации). Сгенерированный платформонезависимый псевдокод может быть преобразован при помощи JIT-компилятора в машинные инструкции непосредственно в момент выполнения программы.
Улучшения в Clang 3.6:
Применяемый по умолчанию режим языка Си изменён с C99 с расширениями GNU на C11 с расширениями GNU;
Добавлена экспериментальная поддержка некоторых элементов будущего стандарта C++1z (C++17), в том числе выражения Fold, символьного литерала u8, краткого определения вложенных пространств имён (namespace A::B { ... } вместо namespace A { namespace B { ... } }), атрибутов для пространств имён;
Добавлена поддержка стандартного C11-заголовка stdatomic.h;
Встроенный макрос __has_attribute больше не вы
...
Читать дальше »