Skip to content

flang 0.7.12

Choose a tag to compare

@the-homeless-god the-homeless-god released this 06 Sep 05:00
· 3308 commits to main since this release

Все девять целей печати наконец приезжают с установкой

0.7.11 вёз рантайм одной цели: brew install клал share/flang/c и только. Восемь остальных были обещаны в man, в обоих README и в справке самого двоичного — и у поставившего не работали. Нашлось живьём, попыткой flang emit --target js.

Теперь архив, формула Homebrew и asdf везут все девять — 32 файла рантайма, runtime/<цель>/. Проба формулы щупает две цели вместо одной: пока она щупала одну, ровно одна и работала.

Ключ кеша приговоров был подделываем

Многочленный отпечаток линеен — столкновение не искали перебором, а решали уравнением за 3,6 секунды. Показано на живой программе: два постусловия, одно ядро доказывает, другое отвергает, имена подобраны под общий ключ. Печать с горячим кешем ставила ноль сторожей постусловия вместо одного — обоими кодами 0 и без слова в stderr.

Ключ переведён на sha256. Цена названа честно: честный кеш не окупается — 23,0 с против 22,2 с вообще без кеша, потому что sha256 написан на самом flang.

Целей в CI восемь из девяти вместо двух

Расширение упиралось не в цену, а в то, что никто не мерил: шесть тулчейнов из семи уже лежат в образе раннера. Вся связка стоит 15,8 с. Без присмотра осталась одна цель, elixir, и это сказано в выводе самого шага, а не умолчано.

Чекер перестал врать в обе стороны

  • доля проверенного корпуса 32,56 % → 56,98 % по записям;
  • набор проб: 159 подделок — принято кодом 0 ноль; 119 честных — отвергнуто ноль;
  • ложные тревоги на честных записях: 62 из 923 → 0.

Примеры самого компилятора гоняются

Их 4453, и до этого выпуска не исполнялся ни один — единственная работа, которая до них дошла бы, падала по памяти на трёх метках подряд. Теперь под присмотром 4350.

Семя воспроизводимо

Две перепечатки одного дерева дали побайтово одинаковое тело: 4 файла, 1 229 825 байт.


Порода, всплывшая за сутки восемнадцать раз: сторожат ровно то, что умеют посчитать.