JRT PASCAL TECHNICAL NEWSLETTER 3.0 - 1 APRIL 11, 1983 1. EXTERNAL PROCEDURE DECLARATIONS One of the most common programming errors reported to us is declaring external procedures in the wrong order within external procedure modules. In the Pascal source program of an external procedure which calls other external procedures, the procedure header of the called procedures always comes AFTER the header of the current procedure. That is - only global const, type and var declarations can come between the word extern and the procedure header. EXTERN { optional global CONST, TYPE, VAR declarations } PROCEDURE THISPROC ( X,Y : INTERGER ); VAR N, M : INTEGER; { variables local to THISPROC } PROCEDURE EXPROC1; EXTERN PROCEDURE EXPROC2 ( A : REAL ); EXTERN; FUNCTION EXFUN1 ( X : REAL ): REAL; EXTERN; BEGIN { THISPROC Pascal code } END; . The external procedure example on the reference card is in error. 2. FILES OF RECORD LENGTH GREATER THAN 128 The procedures GET, PUT and window variables should not be used with files whose record length (declared in the FILE OF ...) is greater than 128 bytes. Random files with records of any length are allowed. READ/WRITE may be used to sequentially input/output records greater than 128 bytes if one of the following is done: A. if the file's record size exceeds 128 then it should be declared as FILE OF CHAR. B. install this patch using CP/M's DDT utility program: A>DDT EXEC.COM DDT VERS 1.4 NEXT PC END 5E00 0100 C7FF -A366E 366E LXI H,7F 3671 . A466E 466E LXI H,7F 4671 . -G0 A>SAVE 93 EXEC.COM TECHNICAL NEWSLETTER 3.0 - 1 Page 1  3671 . A466E 466E LXI H,7F 4671 . -G0 A>SAVE 93 EXEC.COM