MODULE TOpen3DRow; (* M3: a rank-2 subview of an open 3-D array forwarded to open 2-D. *) TYPE Cube = ARRAY [0..1], [0..1], [0..2] OF INTEGER; VAR ExitCode : INTEGER; c : Cube; PROCEDURE SetPlane (VAR a : ARRAY OF ARRAY OF INTEGER); BEGIN a[0, 2] := 42 END SetPlane; PROCEDURE Outer (VAR a : ARRAY OF ARRAY OF ARRAY OF INTEGER); BEGIN SetPlane(a[1]) END Outer; BEGIN Outer(c); IF c[1, 0, 2] = 42 THEN ExitCode := 42 ELSE ExitCode := 1 END END TOpen3DRow.