Frank,
Thanks for your reply. I've managed to cut down the module to this very short module so I just get two errors, both - prior parameter's size depends on 'A':
MODULE Test interface; export Test=(Test_proc);
PROCEDURE Test_proc(List : ARRAY[a..b :INTEGER] OF DOUBLE); END.
MODULE Test implementation;
PROCEDURE Test_proc;
BEGIN List[a]:= 2.3; List[2]:= 2.3; END; { Test_proc }
END.
The errors correspond to each assignment although the error line is the declaration. Sure enough, converting this to a unit fixes the problem:
UNIT Test;
Interface PROCEDURE Test_proc(List : ARRAY[a..b :INTEGER] OF DOUBLE);
Implementation
PROCEDURE Test_proc;
BEGIN List[a]:= 2.3; List[2]:= 2.3; END; { Test_proc }
END.
Is the module syntax illegal or is it a bug? If it is a bug, at least you can take comfort in knowing it can kill the DEC Pascal compiler too!
Regards David Wood, QinetiQ Farnborough
The Information contained in this E-Mail and any subsequent correspondence is private and is intended solely for the intended recipient(s). For those other than the recipient any disclosure, copying, distribution, or any action taken or omitted to be taken in reliance on such information is prohibited and may be unlawful.