diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-06-06 10:14:46 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2007-06-06 10:14:46 +0000 |
commit | df60170ddc5409cd057bef02d27df3806811d967 (patch) | |
tree | 82b6ae097e3527bf05464afd6655618c004ec21e /gcc/ada/a-calend-vms.ads | |
parent | bf941b70cecd7a42e70e911a26d479394cc64d5c (diff) | |
download | gcc-df60170ddc5409cd057bef02d27df3806811d967.tar.gz |
2007-04-20 Hristian Kirtchev <kirtchev@adacore.com>
* a-calend.ads, a-calend.adb, a-calend-vms.ads, a-calend-vms.adb ("-"
(Time, Time)): Use To_Relative_Time rather than manual calculation to
express the bounds of Duration as Time. Raise Time_Error when the
result is greater or equal to the higher bound of Duration (on the
margin case).
("+" (Time, Duration)): Reorder code. Remove the declaration of constant
Ada_High_And_Leaps.
("-" (Time, Duration)): Reorder code. Remove the declaration of constant
Ada_High_And_Leaps.
("-" (Time, Time)): Reorder code.
(All_Leap_Seconds): Removed.
(Arithmetic_Operations.Add): Remove sign related kludge.
(Arithmetic_Operations.Difference): Control the leaps seconds processing
with flag Leap_Support.
(Arithmetic_Operations.Subtract): Remove sign related kludge.
(Check_Within_Time_Bounds): New procedure.
(Clock): Control the leap seconds processing with flag Leap_Support.
(Cumulative_Leap_Seconds): Assert that the target supports leap seconds.
(Formatting_Operations.Split): Control the leap seconds processing with
flag Leap_Support.
(Formatting_Operations.Time_Of): Control the leaps seconds processing
with flag Leap_Support. Adjust the year, month and day (if applicable)
when the value of day seconds designates a new day.
(Split): Use parameter associations for better readability. Integrate
flag Is_Ada_05.
(Time_Of): Use parameter associations for better readability. Integrate
flag Is_Ada_05.
* a-calfor.adb (Split): Use parameter associations for better
readability. Integrate flag Is_Ada_05.
(Time_Of): Remove flag Leap_Checks. Use parameter associations for
better readability. Integrate flag Is_Ada_05.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125363 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/a-calend-vms.ads')
-rw-r--r-- | gcc/ada/a-calend-vms.ads | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/gcc/ada/a-calend-vms.ads b/gcc/ada/a-calend-vms.ads index 6fc05f3f80a..f0c97492732 100644 --- a/gcc/ada/a-calend-vms.ads +++ b/gcc/ada/a-calend-vms.ads @@ -113,7 +113,7 @@ private -- system base date and time 1858-11-17 0.0 (the Smithsonian base date and -- time for the astronomic calendar). - -- The time value stored is typically a GMT value, as provided in standard + -- The time value stored is typically a UTC value, as provided in standard -- Unix environments. If this is the case then Split and Time_Of perform -- required conversions to and from local times. @@ -123,11 +123,6 @@ private type Time is new OSP.OS_Time; - -- The range of Ada time expressed as milis since the VMS Epoch - - Ada_Low : constant Time := (10 * 366 + 32 * 365 + 45) * Milis_In_Day; - Ada_High : constant Time := (131 * 366 + 410 * 365 + 45) * Milis_In_Day; - Days_In_Month : constant array (Month_Number) of Day_Number := (31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31); @@ -145,7 +140,7 @@ private package Arithmetic_Operations is function Add (Date : Time; Days : Long_Integer) return Time; - -- Add X number of days to a time value + -- Add a certain number of days to a time value procedure Difference (Left : Time; @@ -159,7 +154,7 @@ private -- values are positive, negative otherwise. function Subtract (Date : Time; Days : Long_Integer) return Time; - -- Subtract X number of days from a time value + -- Subtract a certain number of days from a time value end Arithmetic_Operations; package Formatting_Operations is @@ -168,18 +163,21 @@ private -- within the range of 0 .. 6 (Monday .. Sunday). procedure Split - (Date : Time; - Year : out Year_Number; - Month : out Month_Number; - Day : out Day_Number; - Day_Secs : out Day_Duration; - Hour : out Integer; - Minute : out Integer; - Second : out Integer; - Sub_Sec : out Duration; - Leap_Sec : out Boolean; - Time_Zone : Long_Integer); - -- Split a time value into its components + (Date : Time; + Year : out Year_Number; + Month : out Month_Number; + Day : out Day_Number; + Day_Secs : out Day_Duration; + Hour : out Integer; + Minute : out Integer; + Second : out Integer; + Sub_Sec : out Duration; + Leap_Sec : out Boolean; + Is_Ada_05 : Boolean; + Time_Zone : Long_Integer); + -- Split a time value into its components. Set Is_Ada_05 to use the + -- local time zone (the value in Time_Zone is ignored) when splitting + -- a time value. function Time_Of (Year : Year_Number; @@ -191,18 +189,20 @@ private Second : Integer; Sub_Sec : Duration; Leap_Sec : Boolean; - Leap_Checks : Boolean; Use_Day_Secs : Boolean; + Is_Ada_05 : Boolean; Time_Zone : Long_Integer) return Time; -- Given all the components of a date, return the corresponding time -- value. Set Use_Day_Secs to use the value in Day_Secs, otherwise the -- day duration will be calculated from Hour, Minute, Second and Sub_ - -- Sec. Set flag Leap_Checks to verify the validity of a leap second. + -- Sec. Set Is_Ada_05 to use the local time zone (the value in formal + -- Time_Zone is ignored) when building a time value and to verify the + -- validity of a requested leap second. end Formatting_Operations; package Time_Zones_Operations is function UTC_Time_Offset (Date : Time) return Long_Integer; - -- Return the offset in seconds from GMT + -- Return the offset in seconds from UTC end Time_Zones_Operations; end Ada.Calendar; |