t_ptrfwd.mod 371 B

123456789101112
  1. MODULE TPtrFwd;
  2. // LEGAL forward reference: a POINTER's base type may be declared later
  3. // (for recursive / self-referential structures). Exit 42.
  4. TYPE Node = POINTER TO NodeRec;
  5. NodeRec = RECORD next : Node; v : INTEGER END;
  6. VAR p : Node;
  7. ExitCode : INTEGER;
  8. BEGIN
  9. NEW(p);
  10. p^.v := 42;
  11. IF p^.v = 42 THEN ExitCode := 42 ELSE ExitCode := 1 END
  12. END TPtrFwd.