MODULE TOpen2DNested; (* M3: an open 2-D formal forwarded to another open 2-D formal. *) TYPE Mat = ARRAY [0..1], [0..2] OF INTEGER; VAR ExitCode : INTEGER; m : Mat; PROCEDURE Inner (VAR a : ARRAY OF ARRAY OF INTEGER); BEGIN a[1, 2] := 42 END Inner; PROCEDURE Outer (VAR a : ARRAY OF ARRAY OF INTEGER); BEGIN Inner(a) END Outer; BEGIN Outer(m); IF m[1, 2] = 42 THEN ExitCode := 42 ELSE ExitCode := 1 END END TOpen2DNested.