50000 #include "rundecs.h" 50010 (* COPYRIGHT 1983 C.H.LINDSEY, UNIVERSITY OF MANCHESTER *) 50020 (**) 50030 (**) 50040 FUNCTION STRUCTSCOPE(STRUCTPTR: UNDRESSP; TEMPLATE: DPOINT):DEPTHRANGE; 50050 VAR TEMPOS, STRUCTPOS: INTEGER; 50060 NEWEST: DEPTHRANGE; 50070 PTR: UNDRESSP; 50080 BEGIN 50090 NEWEST := 0; 50100 TEMPOS := 1; 50110 STRUCTPOS := TEMPLATE^[1]; 50120 WHILE STRUCTPOS>=0 DO 50130 BEGIN 50140 PTR := INCPTR(STRUCTPTR, STRUCTPOS); 50150 WITH PTR^.FIRSTPTR^ DO 50160 IF NEWEST<OSCOPE THEN NEWEST := OSCOPE; 50170 TEMPOS := TEMPOS+1; 50180 STRUCTPOS := TEMPLATE^[TEMPOS] 50190 END; 50200 STRUCTSCOPE := NEWEST 50210 END; 50220 (**) 50230 (**) 50240 (*-02() BEGIN END ; ()-02*) 50250 (*+01() 50260 BEGIN (*OF MAIN PROGRAM*) 50270 END (*OF EVERYTHING*). 50280 ()+01*)