OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 19 Март, 2024 10:13

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: Суббота, 07 Ноябрь, 2020 14:49 

Зарегистрирован: Понедельник, 11 Сентябрь, 2017 13:23
Сообщения: 1543
Она сыпет ворнингами и часть тестов падает, но на вид выглядит работоспособным, в том смысле, что четыре платформы собираются, запускаются, графический интерфейс работает, ИСР и веб-браузер открывают сайтик. Если бы совсем не работало, то этот тест бы не прошёл.

В телеграме Сергей Дурманов объяснил, что конструкторы множества, такие как {var1..var2}
создают множество максимально возможного размера. Соответственно, после того, как появился в 32-разрядной ЯОС тип SET64, внезапно перестали компилироваться присваивания такие:

переменнаяТипаSET := {var1..var2}, поскольку справа стал возвращаться тип SET64. Пришлось везде вставлять явное преобразование, это затронуло до десятка файлов. Т.е. приходится вместо {var1..var2} писать SET({var1..var2}) - это уже какой-то маразм. С константными конструкторами, такими, как {1..10} всё нормально - проверка типа происходит во время компиляции.

Мне кажется, было бы как-то более последовательно, если бы конструктор множества {var1..var2} создавал бы тип SET, и, соответственно, проверял бы ограничения во время выполнения. А если нужен бОльший SET, то нужно писать как-то так: SET64{var1..var2}. Потому что иначе завтра введут SET128 и придётся везде в 64-разрядных платформах тоже править такие конструкторы.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB