v_deref.mod 286 B

1234567891011121314
  1. MODULE VDeref;
  2. TYPE Node = RECORD val : INTEGER; next : POINTER TO Node END;
  3. TYPE PNode = POINTER TO Node;
  4. VAR p : PNode; ExitCode : INTEGER;
  5. PROCEDURE Bump(VAR x : INTEGER);
  6. BEGIN
  7. x := x + 100
  8. END Bump;
  9. BEGIN
  10. NEW(p);
  11. p^.val := 5;
  12. Bump(p^.val);
  13. ExitCode := p^.val
  14. END VDeref.