OberonCore https://forum.oberoncore.ru/ |
|
Маркеры ошибок https://forum.oberoncore.ru/viewtopic.php?f=1&t=2156 |
Страница 1 из 1 |
Автор: | id_ler [ Четверг, 03 Декабрь, 2009 15:51 ] |
Заголовок сообщения: | Маркеры ошибок |
Выделено: viewtopic.php?p=39016#p39016 Geniepro писал(а): upd. Только что попытался проверить в BB 1.2 -- не компилируется... Я не много изменил Ваш тест и обнаружил интересную, как мне кажется, особенность ВВ 1.5. Существует зависимость появления ошибки в редакторе от количества табуляций. Скопирую оба варианта, но при воспроизведении ее на другой машине результат, скорее всего, будет иной. Даже набирая комментарии потом сложно найти этот переход. С ошибкой в строке L2: StdLog.Int(y) Код: MODULE GotoTest; Без ошибкиIMPORT StdLog; PROCEDURE Go*; VAR x, y : INTEGER; LABEL L1; LABEL L2; BEGIN x := 0; y := 0; L1: StdLog.Int(x); INC(x); GOTO L1; L2: StdLog.Int(y); INC(y); GOTO L2; END Go; END GotoTest. Код: MODULE GotoTest; Еще, может быть, импорт модуля SYSTEM изменит картину в какую-нибудь сторону.
IMPORT StdLog; PROCEDURE Go*; VAR x, y : INTEGER; LABEL L1; LABEL L2; BEGIN x := 0; y := 0; L1: StdLog.Int(x); INC(x); GOTO L1; L2: StdLog.Int(y); INC(y); GOTO L2; END Go; END GotoTest. |
Автор: | Илья Ермаков [ Четверг, 03 Декабрь, 2009 16:01 ] |
Заголовок сообщения: | Re: серверный режим через сеть |
Какой ошибки в редакторе? Вы имеете в виду ошибку компиляции? Хотите сказать, что это бред иногда компилируется? |
Автор: | id_ler [ Четверг, 03 Декабрь, 2009 16:20 ] |
Заголовок сообщения: | Re: серверный режим через сеть |
Илья Ермаков писал(а): Какой ошибки в редакторе? Вы имеете в виду ошибку компиляции? Хотите сказать, что это бред иногда компилируется? Понятно, что такая программа не скомпилируется полностью. Но маркер ошибок в строке L2: StdLog.Int(y); появляется только после третьей табуляции. Это относится только к строке после GOTO. В строке, например, L1: StdLog.Int(x);такое не получается совсем. |
Автор: | Илья Ермаков [ Четверг, 03 Декабрь, 2009 16:46 ] |
Заголовок сообщения: | Re: серверный режим через сеть |
Компилятор может пропускать некоторые ошибки, если есть другие. |
Автор: | igor [ Четверг, 03 Декабрь, 2009 17:17 ] |
Заголовок сообщения: | Re: серверный режим через сеть |
Илья Ермаков писал(а): Компилятор может пропускать некоторые ошибки, если есть другие. Компилятор пропускает ошибки, которые стоят слишком тесно (DevCPM):Код: PROCEDURE Mark* (n, pos: INTEGER);
BEGIN ... IF (pos < lastpos) OR (lastpos + 9 < pos) THEN ... INC(errors) END; ... END Mark; |
Автор: | id_ler [ Пятница, 04 Декабрь, 2009 14:25 ] |
Заголовок сообщения: | Re: серверный режим через сеть |
Нельзя ли вопрос о маркерах вынести в отдельную тему? Хотелось бы понять ее до конца. Сейчас не могу точно сформулировать вопрос. Ясно только, что правильное форматирование исходника имеет не последнее значение в понимании кода. |
Автор: | Info21 [ Пятница, 04 Декабрь, 2009 15:33 ] |
Заголовок сообщения: | Re: серверный режим через сеть |
id_ler писал(а): Нельзя ли вопрос о маркерах вынести в отдельную тему? Хотелось бы понять ее до конца. Сейчас не могу точно сформулировать вопрос. Ясно только, что правильное форматирование исходника имеет не последнее значение в понимании кода. Почаще нажимайте Ctrl+K. После каждого исправления. Жалко что ли? |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |