Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Приведем общую форму правила с восстановительным дейст-




Вием

оператор: error {resynch();

Yyclearin;

yyerror;}

Предполагается, что пользовательская процедура resynch()

Просматривает входной поток до начала очередного оператора.

Вызвавшая ошибку лексема, хранимая анализатором в качестве

Входной лексемы, стирается, после этого гасится состояние

Ошибки.

При построении анализаторов, работающих в интерактивном

режиме, для обработки ошибок рекомендуются правила вида:

входная_строка: error '\n' {yyerrok;

printf("Повторите последнюю строку \n");}

входная_строка {$$=$4;}

В действии, предусмотренном после ввода ошибочной строки,

Пользователю делается подсказка, а состояние ошибки гасится.

Значением нетерминала после свертки здесь становится значе-

Ние повторно введенной строки.

Диагностика ошибок

Yacc выдает ряд сообщений об ошибках в случае невозмож-

Ности построения грамматического анализатора. В тексте сооб-

щения, предваряемом заголовком "ошибка:", содержится указа-

Ние причины ошибки и номер просматриваемой в момент ее появ-

Ления строки спецификационного файла. Перечислим основные

типы фиксируемых yacc ошибок:

Неверно заданные флаги командной строки;

Невозможность открытия входного или временных файлов;

отсутствие файла /usr/lib/yaccpar с текстом процедуры

Yyparse;






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных