t_record_multidim_ctor.mod 421 B

1234567891011121314151617
  1. MODULE TRecordMultiDimCtor;
  2. (* M5: runtime record constructor whose field is a rank-2 array. *)
  3. TYPE
  4. Row = ARRAY [0..2] OF INTEGER;
  5. Grid = ARRAY [0..1] OF Row;
  6. Rec = RECORD tag : INTEGER; g : Grid END;
  7. VAR ExitCode : INTEGER;
  8. r : Rec;
  9. BEGIN
  10. r := Rec { 7, Grid { Row{1,2,3}, Row{4,5,42} } };
  11. IF (r.tag = 7) AND (r.g[1,2] = 42) THEN
  12. ExitCode := 42
  13. ELSE
  14. ExitCode := 1
  15. END
  16. END TRecordMultiDimCtor.