В 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.
```
Похоже на фичу для замены модулей на внешние библиотеки. Или для загрузки модулей в виде системных библиотек -- сначала с модулем собирается библиотека, а потом для нее из того же исходника быстро делается интерфейсный модуль.