home *** CD-ROM | disk | FTP | other *** search
/ Chip 2000 July / Chip_2000-07_cd.bin / sharewar / prodelph / PROCAL2.PAS < prev    next >
Pascal/Delphi Source File  |  2000-05-01  |  2KB  |  87 lines

  1. unit procal2;
  2. {$O-}  // Do not remove! Delphi might crash !!!!
  3. {$R-}
  4. {$Q-}
  5. {$A+}
  6.  
  7. interface
  8. USES
  9.   Windows;
  10.  
  11. TYPE
  12. {$IFDEF VER120 }
  13.   TMyComp  = Int64;
  14. {$ELSE }
  15.   {$IFDEF VER130 }
  16.     TMyComp  = Int64;
  17.   {$ELSE }
  18.     TMyComp  = Comp;
  19.   {$ENDIF }
  20. {$ENDIF }
  21.   TMyLargeInteger = RECORD
  22.                     CASE Byte OF
  23.                      0 : ( LowPart  : DWORD; HighPart : LongInt );
  24.                      1 : ( QuadPart : TMyComp );
  25.                   END;
  26.  
  27. PROCEDURE Empty;
  28. FUNCTION TopFunction ( VAR index : Integer ) : TMyLargeInteger;
  29. FUNCTION FunctionWith1000( VAR index : Integer ) : TMyLargeInteger;
  30. FUNCTION FunctionWith10000( VAR index : Integer ) : TMyLargeInteger;
  31.  
  32. implementation
  33.  
  34. FUNCTION DeepFunction : Integer;
  35. BEGIN
  36.   Result := 0;
  37. END;
  38.  
  39. FUNCTION MidFunction : Integer;
  40. VAR
  41.   i : Integer;
  42. BEGIN
  43.   FOR i := 1 TO 10 DO
  44.     Result := DeepFunction;
  45. END;
  46.  
  47. FUNCTION TopFunction ( VAR index : Integer ) : TMyLargeInteger;
  48. VAR
  49.   i : Integer;
  50. BEGIN
  51.   FOR i := 1 TO 10 DO
  52.     index := MidFunction;
  53.   Result.lowpart := 0;
  54.   Result.highpart := 0;
  55. END;
  56.  
  57. FUNCTION FunctionWith10000( VAR index : Integer ) : TMyLargeInteger;
  58. VAR
  59.   i : Integer;
  60. BEGIN
  61.   Result.lowpart  := 0;
  62.   Result.highpart := 0;
  63.   FOR i := 1 TO 10000 DO
  64.     INC(index);
  65. END;
  66.  
  67. FUNCTION FunctionWith1000( VAR index : Integer ) : TMyLargeInteger;
  68. VAR
  69.   i : Integer;
  70. BEGIN
  71.   Result.lowpart  := 0;
  72.   Result.highpart := 0;
  73.   FOR i := 1 TO 1000 DO
  74.     INC(index);
  75. END;
  76.  
  77. PROCEDURE Empty;
  78. BEGIN
  79. END;
  80.  
  81. PROCEDURE NotUsed;
  82. BEGIN
  83. END;
  84.  
  85.  
  86. end.
  87.