program ptest17; { test local and global accesses } type small = array [1 .. 256] of integer; big = array [1 .. 65535] of integer; var g1, g2: integer; s1: small; b1: big; procedure p2(s2: small; t2: integer); var b2: big; v2: integer; begin s2[1] := 1; s2[256] := 0; v2 := t2; b2[65535] := 0; t2 := g1; s1 := s2 end { p2 }; procedure p3(s3: small; t3: integer); var b2: big; v2: integer; procedure p4(var w4: integer); var s4: small; v4: integer; begin s4 := s3; s4 := s1; v4 := v2; w4 := g1; b2 := b1; p4(v2) end; begin {p3} p4(v2) end; begin end.