Приложение E. Диагностични съобщения
124
Приложение E. Диагностични съобщения
При използването на UniPascal е възможно да допуснете грешка при написването
на програмата си. Грешките се делят на следните категории:
*
предупреждения по време на компилация;
*
грешки, откриваеми по време на компилация;
*
грешки, откриваеми от операционната система по време на изпълнение на
заявки на програмата (например опит за отваряне на несъществуващ файл);
*
грешки, откриваеми по време на изпълнение, дължащи се на някакъв вид
ограничение (например недостиг на памет);
*
други грешки откриваеми по време на изпълнение;
*
грешки, дефинирани от стандарта ISO и неоткриваеми от UniPascal;
*
алгоритмични грешки.
Предупрежденията се дават само по-време на компилация. В някои случаи те са
само предупреждение за възможна грешка, а в други за действителни грешки, които
не влияят на компилацията на програмата (например използване на несъществуваща
директива за управление на работата на компилатора).
Грешките, дефинирани от стандарта ISO и неоткрити от UniPascal обикновено не
са грешки в UniPascal, поради някои разширения спрямо стандарта. Трябва да се има в
предвид, че такива грешки могат да се появят, ако се опитате да използвате програмата
в друга реализация на Pascal. Например не всички реализации на Pascal поддържат типа
STRING.Алгоритмичните грешки при никакви обстоятелства не могат да бъдат открити
автоматично. В този случай програмата ви работи, но неправилно (т.е. не така, както
искате Вие), а е възможно и изобщо да не работи (т.е. резултатът от работата й да е
непредсказуем).
E.1. Издавани от компилатора съобщенията за грешки
При откриване на грешка (или предупреждение) компилаторът записва в
стандартния изходен файл номера на реда и самия ред, като под мястото на грешката
поставя символа ^. На следващия ред ще бъде написано обяснение за вида на грешката,
ако съществува файла UNIPAS.ERR, в който са записани помощни обяснения за всяка
грешка. Ако такъв файл няма, извежда се само номера на грешката.
Грешките с номера от 1 до 13 са само предупредителни и независимо от тяхното
наличие, компилаторът генерира изпълним файл. Грешките с номера от 240 до 255 са
фатални и компилаторът не може да продължи работа след тях. При останалите грешки
(с номера между 14 и 239) компилаторът продължава синтактичния анализ като вече не
генерира изпълним файл, а само търси наличието на други грешки.
Каквато и програма да компилирате, не трябва да получавате грешка с номер
по-малък от 0 или по-голям от 255, но ако това се случи, трябва да уведомите НИПи
"Програмно Осигуряване", като запазите текста на програмата, в която тази грешка е
настъпила.
E.1.1. Предупредителни съобщения на компилатора
1:
Директивата за управление на компилатора трябва да завършва до края на
реда, въпреки че коментарите могат да бъдат на няколко реда.
2:
Несъществуваща директива за управление на компилатора. Възможно е да
сте сбъркали директивата. Например {$endfi} вместо {$endif}.
<<  <  GO  >  >>

Вернуться к началу сайта