Для включения файловых операций в синтаксические и контекстные правила CFPascal, необходимы следующие изменения в синтаксических правилах 7, 12 и 13 и новое правило 29.
SR7.
<объявления> ::= VAR <список идентификаторов>: <тип>
Идентификатором типа TEXT является <идентификатор> описанный в разделе объявлений имеющий <тип> TEXT. Если идентификатор типа TEXT появляется в <выражении WRITE> или в <выражении READ>, он должен стоять первым в <списке идентификаторов> или <списке вывода>. Идентификатор типа TEXT, иной чем INPUT или OUTPUT должен быть описан в <объявлениях>. Только идентификаторы типа TEXT, исключая INPUT и OUTPUT, могут появляться внутри выражений RESET и REWRITE.
Переменные объявленные как TEXT должны быть подготовлены до того как к ним будут применены выражения READ и WRITE. Первой операцией должны быть REWRITE, которая делает готовит файл для записи. До REWRITE файл имеет неопределенное значение, как неинициализированная переменная типа CHAR. REWRITE может быть применено к фай Лу несколько раз, после чего каждый раз значением файловой переменной становится пустая строка. Последнее операцией примененной к файлу должно быть выражение WRITELN, после чего файл готов к применению выражения RESET, которое готовит файл для чтения. Символы, записанные в определенном порядке после REWRITE, будут считаны в том же порядке после RESET. Файл не может быть прочитан до того как туда что-либо будет записано, такая ситуация вызовет ошибку. Однако марке конца строки, который записывает в файл финальный WRITELN, будет прочитан как пробел. При выполнении следующего выражения READ программа выдаст ошибку. Операция RESET может быть применена к файлу несколько раз.