v_deref.LST 410 B

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