В P-S-I для интерфейсных модулей приведена продукция
Код:
Module = MODULE ident ["[" SysString "]"] ";"
В DevCPP заложена чуть другая
Код:
Module = MODULE ident ["[" ["="] SysString "]"] ";"
Если ставить =, то не запрещаются тела процедур, хотя все равно генерится только символьник.
Код:
MODULE PrivLib [="x.dll"];
PROCEDURE Do*;
VAR i: INTEGER;
BEGIN
i := 1
END Do;
END PrivLib.
Похоже на фичу для замены модулей на внешние библиотеки. Или для загрузки модулей в виде системных библиотек -- сначала с модулем собирается библиотека, а потом для нее из того же исходника быстро делается интерфейсный модуль.