ACATS Test Modification List Version 2.3J March 21, 2001 Changes from the last list: [Note: For clarity, there is no list 2.3I.] Test C761006 was corrected to avoid violating the revised rule in 7.6.1(16/1). In particular, the failure of an Adjust during initialization may prevent the other Adjusts from being called. Test CXA5011 was corrected to avoid Constraint_Error in a rare circumstance. The conversions at lines 361 and 408 may raise Constraint_Error on an implementation for which Integer is 16-bits (as type Discrete_Range has a largest value of 2**16-1). Test CXAC002 was corrected to raise Incomplete after reporting Not_Applicable on line 276. Without this modification, the test reports "Failed" when it clearly is not applicable. The following new tests and test cases are added to test various issues repaired in the Technical Corrigendum: Test B371001 tests that a discriminant_constraint of a general access type is illegal if there is a place within the immediate scope of the designated subtype where the designated subtype's view is unconstrained Test C392013 tests that the "/=" implicitly declared for a tagged type is legal and can be used in a dispatching call. Test C392014 tests that that objects designated by X'Access (where X is of a class-wide type) and new T'Class'(...) are dynamically tagged and can be used in dispatching calls. Test B460005 tests that in a view conversion of arrays, the target and operand components may not have different aliasing (that is, if one has aliased components the other must have aliased components, and vice versa). Test C761011 tests that the failure of a finalization of an object (in a variety of cases) does not prevent other needed finalizations from occurring. Test CDD1001 checks that components of Stream_Element_Array are aliased. This test is only applicable to implementations for which Stream_Element'Size is a multiple of System.Storage_Unit. Tests CXA4005 and CXA4016 were enhanced to check that the lower bound of the result of many functions in Ada.Strings.Bounded and Ada.Strings.Wide_Bounded is 1. Test CXA4034 tests that Ada.Strings.Bounded.Slice and Ada.Strings.Wide_Bounded.Slice raise Index_Error as needed. Test CXAA019 tests that the parameter mode of Ada.Text_IO.Flush and Ada.Streams.Stream_IO.Flush is 'in', as changed by the Technical Corrigendum. Test CXAC003 was enhanced to check that Stream raises Status_Error if its argument is not open. Test CXAC005 tests that the value of the index for a Stream_IO file is updated properly for each operation. Test CXG2008 was enhanced to check that non-generic equivalents of the generic numerics packages are also declared Pure. The ACAA would like to thank Rational Software for its generous submission of many of the above tests. Tests modified before October 1, 2000 are now required. New tests inserted between January 1, 2001 and April 1, 2001 will become required for conformity assessments on October 1, 2001. New tests inserted between October 1, 2000 and January 1, 2001 will become required for conformity assessments on July 1, 2001. New tests inserted between July 1, 2000 and October 1, 2000 will become required for conformity assessments on April 1, 2001. New tests added to the ACATS before July 1, 2000 are now required for conformity assessments. The effective dates of tests are marked in the lists. Questions about this document? Contact the ACAA Technical Agent at agent@ada-auth.org. List explanation: Test numbers given are for the basic test. Categories are "Withdrawn" (the test should not be processed for Ada conformity assessments); "Allowed Modification" (either the original test or the modified one should be processed for Ada conformity assessments); "Modified" (the modified test must be processed for Ada conformity assessments); "Pending New" (the test does not need to be processed for Ada conformity assessments, but will be added in the future); "New" (the test is processed for Ada conformity assessments). ACATS version labels are provided with all new and modified tests. Use this label to retrieve the test from the ACATS VCS. See "How to get new and modified tests". In citations, line numbers are given relative to the start of a test file in the format of '@'; if a test program comprises more than one file, then the particular file will be indicated by "fn", where "n" is the test-program name's file-designator numeral. E.g., "B38103E : @f1-31, ... " denotes test file b38103e1.ada. In cases where there are two or more rationales for different errors in a test program, these different rationales with their respective line citations are listed on separate lines. References to the Ada 83 & Ada 95 standards are given in the format: .[.]: These references are to the Ada 95 standard unless "Ada83" is specified. Main list: ===== Core Language ===== Name Category Version label (effective date; old version label) Short description. B371001 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that a discriminant_constraint of a general access type is Illegal if there is a place within the immediate scope of the designated subtype where the designated subtype's view is unconstrained. B393007 [New] VCS Label: A2_2G [Allowed Modification] New VCS Label: A2_3F Org VCS Label: A2_2G [A2_2G] This test checks the rules in 3.9.3(10) and that an operation that must be overridden (as in 3.9.3(6)) cannot be renamed. [A2_3F] @98, 101, 121 are illegal for an unintended reason -- error B in this test. B3A2016 [New] VCS Label: A2_3C This test checks that the rules in 3.10.2(2) are followed when resolving an access attribute. C392010 [Modified] VCS Label: A2_3D Removed call @429 as the interpretation of 3.9.2(18) is in doubt. C392013 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that "/=" implicitly declared for tagged types is legal and can be used in a dispatching call. C392014 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that objects designated by X'Access (where X is of a class-wide type) and new T'Class'(...) are dynamically tagged and can be used in dispatching calls. C433001 [New] VCS Label: A2_2G This test checks that array aggregates with a dynamic applicable index constraint and an others choice allow other choices. B460005 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that in a view conversion of arrays, the target and operand components may not have different aliasing. B731001 [New] VCS Label: A2_2E Check the requirements of 7.3.1 for inheritance of characteristics and primitive operations, including characteristics and operations that become available later in the declarative part. C761006 [Allowed Modification] New VCS Label: A2_3J Org VCS Label: A2_3 Required after 2001-07-01 Call to Good Adjust @291 need not be made by Technical Corrigendum. C761010 [Modified] VCS Label: A2_3E [A2_3B] Fixed discriminant value @170. Repaired comments and location of call to Report.Test. [A2_3E] Fixed call to Check_Equal to check contents of acesss objects. C761010 [Pending New] New VCS Label: A2_3E Required after 2001-04-01 Added subtest markers. Added uses of objects to prevent elimination of objects in test. [Note: This is an enhancement of an existing test; the existing test remains required for conformity assessment until this new test becomes effective.] C761011 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that the failure of a finalization of an object (in various cases) does not prevent other needed finalizations from occurring. CB41002 [New] New VCS Label: A2_3C Added test of Ada.Exceptions.Exception_Information. CB41004 [Allowed Modification] New VCS Label: A2_3F Org VCS Label: A2_3 Required after 2001-04-01 Removed subtest for Exception_Identity pending resolution of AI-00241. CDB0A02 [Allowed Modification] New VCS Label: A2_3H Org VCS Label: A2_3 Required after 2001-07-01 Requirements on the maximum size of 'Max_Size_in_Storage_Elements are not justified by 13.11.1:3. CXA4005 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Added checks that the lower bound of function results is 1. [Note: This is an enhancement of an existing test; the existing test remains required for conformity assessment until this new test becomes effective.] CXA4016 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Added checks that the lower bound of function results is 1. [Note: This is an enhancement of an existing test; the existing test remains required for conformity assessment until this new test becomes effective.] CXA4034 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that Ada.Strings.Bounded.Slice and Ada.Strings.Wide_Bounded.Slice raise Index_Error as needed. CXA5011 [Allowed Modification] New VCS Label: A2_3J Org VCS Label: A2_3 Required after 2001-07-01 Conversions @361 and @408 may raise Constraint_Error if Integer is 16-bits in size. CXAA019 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that the parameter mode of Ada.Text_IO.Flush and Ada.Streams.Stream_IO.Flush is 'in'. CXAC002 [Allowed Modification] New VCS Label: A2_3J Org VCS Label: A2_3 Required after 2001-07-01 The Not_Applicable case @276 should raise Incomplete. CXAC003 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Added a check that Stream raises Status_Error if its argument is not open. [Note: This is an enhancement of an existing test; the existing test remains required for conformity assessment until this new test becomes effective.] CXAC005 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Check that operations of Stream_IO update the index properly. CXB3010 [Allowed Modification] New VCS Label: A2_3H Org VCS Label: A2_3 Required after 2001-07-01 Assignment @287 might raise Constraint_Error, obscuring the subtest objective. CXB3015 [Modified] VCS Label: A2_2J Modified the component of Array_of_Arrays to have static bounds. ===== Annex C ===== [None] ===== Annex D ===== LXD7001 [Modified] VCS Label: A2_2J Revised file LXD70011 to insure that tasks activate after elaboration of their bodies. ===== Annex E ===== CXE4002 [Allowed Modification] New VCS Label: A2_3H Org VCS Label: A2_3 Required after 2001-07-01 A race condition at start time might cause the test to fail unnecessarily. CXE4004 [Allowed Modification] New VCS Label: A2_3H Org VCS Label: A2_3 Required after 2001-07-01 A race condition at start time might cause the test to fail unnecessarily. CXE4005 [Allowed Modification] New VCS Label: A2_3H Org VCS Label: A2_3 Required after 2001-07-01 A race condition at start time might cause the test to fail unnecessarily. ===== Annex F ===== [None] ===== Annex G ===== CXG2008 [Pending New] New VCS Label: A2_3J Required after 2001-10-01 Added checks that the non-generic packages are declared Pure. [Note: This is an enhancement of an existing test; the existing test remains required for conformity assessment until this new test becomes effective.] ===== Annex H ===== LXH4011 [Allowed Modification] New VCS Label: A2_3F Org VCS Label: A2_3 Required after 2001-04-01 Updated Pass/Fail criteria to allow compile-time rejection of units. How to get new and modified tests: The official home of the ACATS test suite is the ACAA web site. The site can be accessed from the Compilers and Conformance section of the Ada IC web site (www.adaic.org). It also can be accessed directly at www.ada-auth.org. The complete set of official new and modified tests are available in the Mod_2_3J Zip and Tar files on the ACAA web site. Individual new and modified tests can be retrieved from the ACATS VCS. Simply navigate to the appropriate directory (folder), and select the test you want. Select the revision you want (usually the most recent) and it will be retrieved for you. Tests are stored in directories that correspond to the test's prefix. For instance, the test CD92001.A will be found in the CD directory. You can also browse the differences between versions of a test. If you cannot get the files from the official site or you cannot get the files in a format appropriate for your processor, please contact your ACAL. The baseline ACATS 2.3 is available in various formats on the ACAA web site. Summary lists: Withdrawn Tests (Refer to the main list for details) [None] Allowed Modification Tests (Refer to the main list for details) B393007 2001-04-01 C761006 2001-07-01 CB41004 2001-04-01 CDB0A02 2001-07-01 CXA5011 2001-07-01 CXAC002 2001-07-01 CXB3010 2001-07-01 CXE4002 2001-07-01 CXE4004 2001-07-01 CXE4005 2001-07-01 LXH4011 2001-04-01 Modified Tests (Refer to the main list for details) C392010 C761010 CXB3015 LXD7001 New Tests (Refer to the main list for details) B393007 [A2_2G] B3A2016 B731001 C433001 CB41002 Pending New Tests (Refer to the main list for details) B371001 2001-10-01 C392013 2001-10-01 C392014 2001-10-01 B460005 2001-10-01 C761010 2001-04-01 C761011 2001-10-01 CDD1001 2001-10-01 CXA4005 2001-10-01 CXA4016 2001-10-01 CXA4034 2001-10-01 CXAA019 2001-10-01 CXAC003 2001-10-01 CXAC005 2001-10-01 CXG2008 2001-10-01