-- --
-- S p e c --
-- --
--- Copyright (C) 1992-2006, Free Software Foundation, Inc. --
+-- Copyright (C) 1992-2007, Free Software Foundation, Inc. --
-- --
-- This specification is derived from the Ada Reference Manual for use with --
-- GNAT. The copyright notice above, and the license provisions that follow --
-- This is the Alpha/VMS version
with System.OS_Primitives;
+
package Ada.Calendar is
package OSP renames System.OS_Primitives;
function Clock return Time;
-- The returned time value is the number of nanoseconds since the start
- -- of Ada time (1901-01-01 00:00:00.0 UTC).
+ -- of Ada time (1901-01-01 00:00:00.0 UTC). If leap seconds are enabled,
+ -- the result will contain all elapsed leap seconds since the start of
+ -- Ada time until now.
function Year (Date : Time) return Year_Number;
function Month (Date : Time) return Month_Number;
-- 1972-06-30 23:59:59.0
-- 1972-07-01 00:00:00.0
- -- When a new leap second is added, the following steps must be carried
- -- out:
+ -- When a new leap second is introduced, the following steps must be
+ -- carried out:
- -- 1) Increment Leap_Seconds_Count by one
- -- 2) Add an entry to the end of table Leap_Second_Dates
+ -- 1) Increment Leap_Seconds_Count in a-calend.adb by one
+ -- 2) Increment LS_Count in xleaps.adb by one
+ -- 3) Add the new date to the aggregate of array LS_Dates in
+ -- xleaps.adb
+ -- 4) Compile and execute xleaps
+ -- 5) Replace the values of Leap_Second_Times in a-calend.adb with the
+ -- aggregate generated by xleaps
-- The algorithms that build the actual leap second values and discover
-- how many leap seconds have occured between two dates do not need any