tvarol62.pp 907 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. {$ifndef bigfile}
  2. {$ifdef fpc}
  3. {$mode delphi}
  4. {$else fpc}
  5. {$define FPC_HAS_TYPE_EXTENDED}
  6. {$endif fpc}
  7. {$endif bigfile}
  8. type
  9. {$ifdef FPC_COMP_IS_INT64}
  10. comp62 = currency;
  11. {$else FPC_COMP_IS_INT64}
  12. comp62 = comp;
  13. {$endif FPC_COMP_IS_INT64}
  14. {$ifdef FPC_HAS_TYPE_EXTENDED}
  15. procedure test62(a: currency); overload;
  16. begin
  17. writeln('currency called instead of extended');
  18. end;
  19. procedure test62(a: extended); overload;
  20. begin
  21. writeln('extended called instead of currency');
  22. halt(1)
  23. end;
  24. var
  25. x62: currency;
  26. y62: extended;
  27. procedure dotest62;
  28. var
  29. v: variant;
  30. begin
  31. try
  32. v := x62;
  33. test62(v);
  34. except
  35. on E : TObject do
  36. halt(1);
  37. end;
  38. try
  39. v := y62;
  40. test62(v);
  41. except
  42. on E : TObject do
  43. halt(1);
  44. end;
  45. end;
  46. {$ifndef bigfile} begin
  47. dotest62;
  48. end. {$endif not bigfile}
  49. {$else FPC_HAS_TYPE_EXTENDED}
  50. begin
  51. end.
  52. {$endif FPC_HAS_TYPE_EXTENDED}