Skip to content

Compiler v2.3.0

Compare
Choose a tag to compare
@bugdea1er bugdea1er released this 02 Mar 16:03
· 1110 commits to master since this release
e4db015

Нововведения:

  • Добавлен логический тип bool
  • Логические операции теперь возвращают результат типа bool, а логические значения не могут участвовать в арифметических операциях
  • Добавлены константы логического типа true и false
  • Добавлена поддержка двоичных, восьмеричных и шестнадцатиричных целочисленных литералов
  • upb теперь является унарным оператором, принимающим массив в качестве операнда
  • Удалена поддержка оператора goto и пользовательских меток

Улучшения:

  • Проведен рефакторинг разбора операторов
  • В тесты на генерацию кода добавлены assert для автоматической проверки значений переменных
  • В API синтаксического дерева разбора добавлены assert для проверки корректности обращения
  • Значительно доработано восстановления разбора выражений и операторов после обнаружения ошибок
  • База тестов на лексические ошибки, а также синтаксические и семантические ошибки в выражениях и операторах пересортирована и дополнена

Исправления:

  • Возвращена печать символов и строк при помощи функций print и printid
  • Добавлены ограничения на вид операндов тернарного оператора