CVS difference for ais/ai-00351.txt

Differences between 1.14 and version 1.15
Log of other versions for file ais/ai-00351.txt

--- ais/ai-00351.txt	2005/06/16 23:47:33	1.14
+++ ais/ai-00351.txt	2005/08/05 04:35:29	1.15
@@ -1,4 +1,4 @@
-!standard  9.06(11)                                     05-06-06  AI95-00351/08
+!standard  9.06(11)                                     05-07-20  AI95-00351/09
 !standard  9.06(24)
 !standard  9.06.01(01)
 !standard  1.2(5)
@@ -351,11 +351,15 @@
                   Leap_Second: Boolean := False;
                   Time_Zone  : Time_Zones.Time_Offset := 0)
                           return Time;
-    Returns a Time built from the date and time values, relative to the
-    specified time zone offset. Time_Error is raised if Leap_Second is True,
-    and Hour, Minute, and Second are not appropriate for a Leap_Second.
-
-    AARM Note: A leap second always occurs at midnight UTC, and is 23:59:60
+    If Leap_Second is False, returns a Time built from the date and time
+    values, relative to the specified time zone offset. If Leap_Second is True,
+    returns the Time that represents the time within the leap second that is
+    one second later than the time specified by the other parameters.
+    Time_Error is raised if the parameters do not form a proper date or time.
+
+    AARM Note: Time_Error should be raised if Leap_Second is True, and
+    the date and time values do not represent the second before a leap second.
+    A leap second always occurs at midnight UTC, and is 23:59:60
     UTC in ISO notation. So, if the time zone is UTC, if any of Hour /= 23,
     Minute /= 59, or Second /= 59, then Time_Error should be raised.
     However, we do not say that, because other time zones will have different
@@ -368,9 +372,11 @@
                   Leap_Second: Boolean := False;
                   Time_Zone  : Time_Zones.Time_Offset := 0)
                           return Time;
-    Returns a Time built from the date and time values, relative to the
-    specified time zone offset. Time_Error is raised if Leap_Second is True,
-    and Seconds is not appropriate for a Leap_Second.
+    If Leap_Second is False, returns a Time built from the date and time
+    values, relative to the specified time zone offset. If Leap_Second is True,
+    returns the Time that represents the time within the leap second that is
+    one second later than the time specified by the other parameters.
+    Time_Error is raised if the parameters do not form a proper date or time.
 
 procedure Split (Date       : in Time;
                  Time_Zone  : in Time_Zones.Time_Offset := 0;
@@ -400,13 +406,13 @@
 function Image (Date : Time;
                 Include_Time_Fraction : Boolean := False;
                 Time_Zone  : Time_Zones.Time_Offset := 0) return String;
-    Returns a string form of the Date relative to the given Time_Zone.
-    The format is "Year-Month-Day Hour:Minute:Second", where each value
-    other than Year is a 2-digit form of the value of the functions
+    The format is "Year-Month-Day Hour:Minute:Second", where the Year is a
+    4-digit value, and all others are 2-digit values, of the functions
     defined in Calendar and Calendar.Formatting, including a leading zero,
-    if needed. Year is a 4-digit value.
+    if needed. The separators between the values are a minus,
+    another minus, a colon, and a single space between the Day and Hour.
     If Include_Time_Fraction is True, the integer part of Sub_Seconds*100 is
-    suffixed to the string as a 2-digit value following a point.
+    suffixed to the string as a point followed by a 2-digit value.
 
     AARM Note: The Image provides a string in ISO 8601 format, the
     international standard time format. Alternative representations allowed
@@ -426,10 +432,11 @@
 function Image (Elapsed_Time : Duration;
                 Include_Time_Fraction : Boolean := False) return String;
     Returns a string form of the Elapsed_Time.
-    The format is "Hour:Minute:Second", where each value
-    is a 2-digit form of the value, including a leading zero, if needed.
+    The format is "Hour:Minute:Second", where all values
+    are 2-digit values, including a leading zero, if needed.
+    The separators between the values are colons.
     If Include_Time_Fraction is True, the integer part of Sub_Seconds*100 is
-    suffixed to the string as a 2-digit value following a point.
+    suffixed to the string as a point followed by a 2-digit value.
     If Elapsed_Time < 0.0, the result is Image (abs Elapsed_Time,
     Include_Time_Fraction) prefixed with a minus sign. If Abs Elapsed_Time
     represents 100 hours or more, the result is implementation-defined.
@@ -859,9 +866,11 @@
                   Leap_Second: Boolean := False;
                   Time_Zone  : Time_Zones.Time_Offset := 0)
                           @b<return> Time;>
-@xindent<Returns a Time built from the date and time values, relative to the
-specified time zone offset. Time_Error is raised if Leap_Second is True,
-and Hour, Minute, and Second are not appropriate for a Leap_Second.>
+@xindent<If Leap_Second is False, returns a Time built from the date and time
+values, relative to the specified time zone offset. If Leap_Second is True,
+returns the Time that represents the time within the leap second that is one
+second later than the time specified by the other parameters.
+Time_Error is raised if the parameters do not form a proper date or time.>
 
 @xcode<@b<function> Time_Of (Year       : Year_Number;
                   Month      : Month_Number;
@@ -870,9 +879,11 @@
                   Leap_Second: Boolean := False;
                   Time_Zone  : Time_Zones.Time_Offset := 0)
                           @b<return> Time;>
-@xindent<Returns a Time built from the date and time values, relative to the
-specified time zone offset. Time_Error is raised if Leap_Second is True,
-and Seconds is not appropriate for a Leap_Second.>
+@xindent<If Leap_Second is False, returns a Time built from the date and time
+values, relative to the specified time zone offset. If Leap_Second is True,
+returns the Time that represents the time within the leap second that is one
+second later than the time specified by the other parameters.
+Time_Error is raised if the parameters do not form a proper date or time.>
 
 @xcode<@b<procedure> Split (Date       : @b<in> Time;
                  Time_Zone  : @b<in> Time_Zones.Time_Offset := 0;
@@ -903,12 +914,13 @@
                 Include_Time_Fraction : Boolean := False;
                 Time_Zone  : Time_Zones.Time_Offset := 0) @b<return> String;>
 @xindent<Returns a string form of the Date relative to the given Time_Zone.
-The format is "Year-Month-Day Hour:Minute:Second", where each value
-other than Year is a 2-digit form of the value of the functions
+The format is "Year-Month-Day Hour:Minute:Second", where the Year is a
+4-digit value, and all others are 2-digit values, of the functions
 defined in Calendar and Calendar.Formatting, including a leading zero,
-if needed. Year is a 4-digit value.
+if needed. The separators between the values are
+a minus, another minus, a colon, and a single space between the Day and Hour.
 If Include_Time_Fraction is True, the integer part of Sub_Seconds*100 is
-suffixed to the string as a 2-digit value following a point.>
+suffixed to the string as a point followed by a 2-digit value.>
 
 @xcode<@b<function> Value (Date : String;
                 Time_Zone  : Time_Zones.Time_Offset := 0) @b<return> Time;>
@@ -920,10 +932,11 @@
 @xcode<@b<function> Image (Elapsed_Time : Duration;
                 Include_Time_Fraction : Boolean := False) @b<return> String;>
 @xindent<Returns a string form of the Elapsed_Time.
-The format is "Hour:Minute:Second", where each value
-is a 2-digit form of the value, including a leading zero, if needed.
+The format is "Hour:Minute:Second", where all values
+are 2-digit values, including a leading zero, if needed.
+The separators between the values are colons.
 If Include_Time_Fraction is True, the integer part of Sub_Seconds*100 is
-suffixed to the string as a 2-digit value following a point.
+suffixed to the string as a point followed by a 2-digit value.
 If Elapsed_Time < 0.0, the result is Image (@b<abs> Elapsed_Time,
 Include_Time_Fraction) prefixed with a minus sign. If @b<abs> Elapsed_Time
 represents 100 hours or more, the result is implementation-defined.>
@@ -4690,6 +4703,45 @@
 Sent: Tuesday, April  6, 2004  8:11 AM
 
 I like your suggestion of just having one additional subclause.
+
+****************************************************************
+
+From: Randy Brukardt
+Sent: Saturday, July 2, 2005  5:30 PM
+
+Someone stuck a piece of paper with some comments on 9.6 into my hand in
+York. For future reference, please put your name and e-mail on such things
+so I don't have to publicly deal with trivial concerns.
+
+1) "Start of 9.6; footer is wrong in PDF".
+
+I'm not certain what is thought to be wrong about the footer, but I can
+guess. The section number in the footers reflects whatever section *starts*
+the page. Thus footers generally have the section heading preceding the one
+whose title is prominently displayed in the middle of the page.
+
+This is a feature of Word that really isn't changeable. But even if it was,
+the Ada 95 standard uses similar footers, so arguable it would be incorrect
+to change them.
+
+2) "9.6(27)  86400 should be 86_400"
+
+This paragraph is unchanged by the Amendment; the number in question is
+directly from the original Ada 95 text. It is true that 9.6(25) uses
+underscores in similar numbers, but those numbers are fixed point as opposed
+to integer. I could also argue that using underscores in English text is
+wrong, these are English numbers, not numeric_literals, and numbers don't
+contain underscores.
+
+In any case, since this is unchanged text, we'd need a presentation AI in
+order to make a change here. We approved and closed our previous
+presentation AI in York. This seems too trivial an issue to create an AI and
+go through a letter ballot to get it approved. (Of course, it's possible
+that some more important issue would require such an AI to be created, but
+at this point, I think we need to restrict ourselves to actual errors, or
+this thing will be at risk of never getting finished.)
+
+                  Randy Brukardt, Editor, 8652:AMD.1
 
 ****************************************************************
 

Questions? Ask the ACAA Technical Agent