t97_varreal.pas 591 B

12345678910111213141516171819202122232425262728293031323334
  1. program t97_varreal;
  2. { t97 -- VAR REAL parameters. CALC.INC's Evaluate takes `var Value : Real'
  3. and assigns a real function result into it. This fixture checks a constant
  4. store and a six-byte copy through the two-byte address slot, using record
  5. fields as actual parameters. }
  6. type
  7. R = record
  8. V : real;
  9. end;
  10. var
  11. A, B : R;
  12. S : string[10];
  13. procedure setv (var Z : real);
  14. begin
  15. Z := 3
  16. end;
  17. procedure copyv (var D : real; var Src : real);
  18. begin
  19. D := Src
  20. end;
  21. begin
  22. A.V := 0;
  23. B.V := 0;
  24. setv (B.V);
  25. copyv (A.V, B.V);
  26. Str (A.V : 0 : 0, S);
  27. writeln (S)
  28. end.