#endif
/* Type corresponding to GNAT.OS_Lib.OS_Time */
-#if defined (_WIN64)
typedef long long OS_Time;
-#else
-typedef long OS_Time;
-#endif
#define __int64 long long
GNAT_STRUCT_STAT;
function "<" (X, Y : OS_Time) return Boolean is
begin
- return Long_Integer (X) < Long_Integer (Y);
+ return Long_Long_Integer (X) < Long_Long_Integer (Y);
end "<";
----------
function "<=" (X, Y : OS_Time) return Boolean is
begin
- return Long_Integer (X) <= Long_Integer (Y);
+ return Long_Long_Integer (X) <= Long_Long_Integer (Y);
end "<=";
---------
function ">" (X, Y : OS_Time) return Boolean is
begin
- return Long_Integer (X) > Long_Integer (Y);
+ return Long_Long_Integer (X) > Long_Long_Integer (Y);
end ">";
----------
function ">=" (X, Y : OS_Time) return Boolean is
begin
- return Long_Integer (X) >= Long_Integer (Y);
+ return Long_Long_Integer (X) >= Long_Long_Integer (Y);
end ">=";
-----------------
pragma Import (C, Current_Process_Id, "__gnat_current_process_id");
type OS_Time is
- range -(2 ** (Standard'Address_Size - Integer'(1))) ..
- +(2 ** (Standard'Address_Size - Integer'(1)) - 1);
+ range -(2 ** 63) .. +(2 ** 63 - 1);
-- Type used for timestamps in the compiler. This type is used to hold
-- time stamps, but may have a different representation than C's time_t.
-- This type needs to match the declaration of OS_Time in adaint.h.
GNAT_Time : Time_Stamp_Type;
type Underlying_OS_Time is
- range -(2 ** (Standard'Address_Size - Integer'(1))) ..
- +(2 ** (Standard'Address_Size - Integer'(1)) - 1);
+ range -(2 ** 63) .. +(2 ** 63 - 1);
-- Underlying_OS_Time is a redeclaration of OS_Time to allow integer
-- manipulation. Remove this in favor of To_Ada/To_C once newer
-- GNAT releases are available with these functions.