testv5.pp 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. { %VERSION=1.1 }
  2. program testv5;
  3. uses variants,varutils;
  4. Procedure TestLongInt(I : Longint);
  5. Var
  6. V : Variant;
  7. B : Boolean;
  8. begin
  9. Write('Longint to boolean assignment: ');
  10. V:=I;
  11. B:=V;
  12. Writeln(I,' -> ',B);
  13. end;
  14. Procedure TestSmallInt(I : SmallInt);
  15. Var
  16. V : Variant;
  17. B : Boolean;
  18. begin
  19. Write('Smallint to boolean assignment: ');
  20. V:=I;
  21. B:=V;
  22. Writeln(I,' -> ',B);
  23. end;
  24. Procedure TestShortInt(I : ShortInt);
  25. Var
  26. V : Variant;
  27. B : Boolean;
  28. begin
  29. Write('Shortint to boolean assignment: ');
  30. V:=I;
  31. B:=V;
  32. Writeln(I,' -> ',B);
  33. end;
  34. Procedure TestCardinal(I : Cardinal);
  35. Var
  36. V : Variant;
  37. B : Boolean;
  38. begin
  39. Write('Cardinal to boolean assignment: ');
  40. V:=I;
  41. B:=V;
  42. Writeln(I,' -> ',B);
  43. end;
  44. Procedure TestWord(I : Word);
  45. Var
  46. V : Variant;
  47. B : Boolean;
  48. begin
  49. Write('Word to boolean assignment: ');
  50. V:=I;
  51. B:=V;
  52. Writeln(I,' -> ',B);
  53. end;
  54. Procedure TestByte(I : Byte);
  55. Var
  56. V : Variant;
  57. B : Boolean;
  58. begin
  59. Write('Byte to boolean assignment: ');
  60. V:=I;
  61. B:=V;
  62. Writeln(I,' -> ',B);
  63. end;
  64. // 64 bit values
  65. Procedure TestInt64(I : Int64);
  66. Var
  67. V : Variant;
  68. B : Boolean;
  69. begin
  70. Write('Int64 to boolean assignment: ');
  71. V:=I;
  72. B:=V;
  73. Writeln(I,' -> ',B);
  74. end;
  75. Procedure TestQWord(I : QWord);
  76. Var
  77. V : Variant;
  78. B : Boolean;
  79. begin
  80. Write('QWord to boolean assignment: ');
  81. V:=I;
  82. B:=V;
  83. Writeln(I,' -> ',B);
  84. end;
  85. begin
  86. TestLongint(0);
  87. TestSmallInt(0);
  88. TestShortInt(0);
  89. TestCardinal(0);
  90. TestWord(0);
  91. TestByte(0);
  92. TestInt64(0);
  93. TestQWord(0);
  94. TestLongint(-1);
  95. TestSmallInt(-1);
  96. TestShortInt(-1);
  97. TestCardinal(-1);
  98. TestWord(-1);
  99. TestByte(-1);
  100. TestInt64(-1);
  101. TestQWord(-1);
  102. TestLongint(1);
  103. TestSmallInt(1);
  104. TestShortInt(1);
  105. TestCardinal(1);
  106. TestWord(1);
  107. TestByte(1);
  108. TestInt64(1);
  109. TestQWord(1);
  110. end.