OberonCore https://forum.oberoncore.ru/ |
|
SIZE(T) нельзя в константных выражениях? https://forum.oberoncore.ru/viewtopic.php?f=116&t=2507 |
Страница 1 из 1 |
Автор: | Евгений Темиргалеев [ Четверг, 01 Апрель, 2010 11:33 ] |
Заголовок сообщения: | SIZE(T) нельзя в константных выражениях? |
Language Report писал(а): SIZE(T) any type INTEGER number of bytes required by T и, гм, компилирует SIZE cannot be used in constant expressions because its value depends on the actual compiler implementation. Код: CONST hexLen = 2 * SIZE(INTEGER); Однако, замечание в LR как рекомендация не выглядит. Или я не правильно понимаю?
|
Автор: | Info21 [ Четверг, 01 Апрель, 2010 14:44 ] |
Заголовок сообщения: | Re: SIZE(T) нельзя в константных выражениях? |
Евгений Темиргалеев писал(а): компилирует Это-то фиксировано в языке. А для записевых и массивовых типов -- будет зависеть. Выравнивание и всё такое.
Код: CONST hexLen = 2 * SIZE(INTEGER); Однако, замечание в LR как рекомендация не выглядит. Или я не правильно понимаю? |
Автор: | Евгений Темиргалеев [ Четверг, 01 Апрель, 2010 16:40 ] |
Заголовок сообщения: | Re: SIZE(T) нельзя в константных выражениях? |
Info21 писал(а): Это-то фиксировано в языке. MIN(INTEGER)..MAX(INTEGER) ... viewtopic.php?p=44485#p44485И получается, что цитированное замечание, с текущей реализацией компилятора не стыкуется... |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |