MODULE TOpen2DAdr; (* M4: ADR of a multi-dimensional view/row is its first payload byte. *) FROM SYSTEM IMPORT ADDRESS, ADR; TYPE Mat = ARRAY [0..1] OF ARRAY [0..2] OF CHAR; VAR ExitCode : INTEGER; m : Mat; PROCEDURE Check (VAR a : ARRAY OF ARRAY OF CHAR) : BOOLEAN; VAR p, q, r : ADDRESS; BEGIN p := ADR(a); q := ADR(a[0]); r := ADR(a[0][0]); RETURN (p = q) AND (q = r) END Check; BEGIN IF Check(m) THEN ExitCode := 42 ELSE ExitCode := 1 END END TOpen2DAdr.