CVS difference for ais/ai-00113.txt

Differences between 1.2 and version 1.3
Log of other versions for file ais/ai-00113.txt

--- ais/ai-00113.txt	1998/09/30 23:25:09	1.2
+++ ais/ai-00113.txt	1999/07/21 03:10:57	1.3
@@ -1,5 +1,6 @@
-!standard 09.06    (26)                               98-06-12  AI95-00113/02
+!standard 09.06    (26)                               99-07-20  AI95-00113/03
 !class binding interpretation 98-03-23
+!status Corrigendum 2000 99-07-20
 !status WG9 approved 98-06-12
 !status ARG Approved (with changes) 11-0-0  97-11-16
 !status work item 96-04-04
@@ -8,20 +9,26 @@
 !difficulty Easy
 !subject Exception raised by Month, Day, Seconds in Ada.Calendar?
 
-!summary 98-03-23
+!summary
 
 The functions Month, Day, and Seconds in Ada.Calendar raise Time_Error
 if the year is outside the range of the subtype Year_Number.
 
-!question 96-04-04
+!question
 
 In the Ada.Calendar package, the function Year and the procedure Split
 raise Time_Error if the given Date parameter represents a date outside
 the range 1901 .. 2099.  What do the functions Month, Day, and Seconds
 do with such a date?
 
-!response 98-03-23
+!recommendation
 
+(See summary.)
+
+!wording
+
+!discussion
+
 The implementation model for these functions is that the procedure Split
 is first called and then the required result is extracted. For example
 
@@ -37,8 +44,31 @@
 
 If Split raises Time_Error then, by propagation, Month will also raise
 Time_Error.
+
+!corrigendum 9.06(26)
+
+@dprepl
+This exception is also raised by the function Year
+or the procedure Split if the year number of the given date
+is outside of the range of the subtype Year_Number.
+@dby
+This exception is also raised by the functions Year, Month, Day, and
+Seconds and the procedure Split if the year number of the given date
+is outside of the range of the subtype Year_Number.
+
+!ACATS test
+
+It would be possible to create a test to test the situation covered in this
+issue. This could be tested by creating a Time value with the year 2099,
+then calling "+" to move to year 2100. (That may raise Time_Error).
+If the "+" does not raise Time_Error, then call Month, Day, etc.
+and verify that Time_Error is raised. Such a test has little value; if
+an implementation returned the correct month, etc. rather than raising
+Time_Error, it would be harmless (although not portable). For many
+implementations, "+" would raise Time_Error (as that was required by Ada 83),
+and the test would be Not_Applicable.
 
-!appendix 96-04-04
+!appendix
 
 !section 9.6(26)
 !subject Exception raised by Month, Day, Seconds in Ada.Calendar?

Questions? Ask the ACAA Technical Agent