Роман, спасибо за пояснения. Но вот опять споткнулся об антаговый тип.
Имеем процедуру Load(file: PChar), где PChar: POINTER TO ARRAY [untagged] OF CHAR.
Вызываем процедуру таким образом: Load("путь к файлу"). Процедура возвращает TRUE, файл успешно загружен.
Но вот я завожу переменную fileName: POINTER TO ARRAY OF CHAR. Загоняю в неё строку "путь к файлу".
Затем вызываю Load(SYSTEM.VAL(PChar, fileName)). Процедура возвращает FALSE. Происходит искажение строки? Или там вообще не строка в итоге передаётся?
В общем, гадаю, что за изменение произошло, отчего путь к файлу оказывается неверным.