ACATS Test Modification List

Version 2.4G
January 22, 2002

Changes from the last list:

Test B3A2009 contains a check which conflicts with the under consideration AI-229. AI-229 allows 'Access for subprograms in generic bodies if the access type is declared in the generic's specification; the RM language does not. Because of the inconsistency, this subtest has been commented out (the ACAA would like to allow vendors to implement the AI, as it is necessary to prevent dangling references to subprograms).

Test CD72A02 has had the test description corrected (it referred to a non-existent test). No substantive changes were made to this test.

Reminder: ACATS 2.5 will be issued in March. As with ACATS 2.3 and 2.4 before it, this is simply a "roll-up" of tests modified before January 1, 2002 and new tests added before October 1, 2001; the same tests would be required on April 1, 2002 whether or not it is issued. The main advantage of new ACATS versions is that the documentation is updated to reflect changes from the past year.

New tests inserted between January 1, 2002 and April 1, 2002 will become required for conformity assessments on October 1, 2002. New tests inserted between October 1, 2001 and January 1, 2002 will become required for conformity assessments on July 1, 2002. New tests inserted between July 1, 2001 and October 1, 2001 will become required for conformity assessments on April 1, 2002. New tests added to the ACATS before July 1, 2001 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 '@<line#,line#,...>'; 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:

   <section|chapter>.<clause>[.<subclause>]:<paragraph>

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.

B330001 [Modified] VCS Label: A2_4D
   Corrected description of last error.

B371001 [New] VCS Label: A2_4C
   [A2_4A] 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.
   [A2_4C] Corrected the "ERROR:" comment format.

B392011 [New] VCS Label: A2_4C
   Check that if the expected type for an expression is an anonymous
   access-to-specific tagged type, then the object designated by the
   expression shall not be dynamically tagged unless it is a
   controlling operand in a call on a dispatching operation. Test
   new cases, that is X'Access (where X is of a class-wide type) and
   new T'Class'(...). (Technical Corrigendum 3.9.2(9/1)).

C392013 [New] VCS Label: A2_4B
   [A2_4A] Check that "/=" implicitly declared for tagged types is
   legal and can be used in a dispatching call.
   [A2_4B] Corrected result for 9 = 9 case.

C392014 [New] VCS Label: A2_4A
   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.

C3A0015 [New] VCS Label: A2_4C
   Check that a derived access type has the same storage pool as its
   parent. (Technical Corrigendum 3.10(7/1)).

B3A2009 [Allowed Modification] New VCS Label: A2_4G Org VCS Label: A2_4
         Required after 2002-07-01
   Commented out subtest at @145, as it conflicts with the under
   consideration AI-229.

B460005 [New] VCS Label: A2_4A
   Check that in a view conversion of arrays, the target and operand
   components may not have different aliasing.

B460005 [Allowed Modification] New VCS Label: A2_4E Org VCS Label: A2_4A
         Required after 2002-04-01
   Corrected syntax of "Error:" comments (which mark the location
   of errors.)

C460012 [Pending New] New VCS Label: A2_4D
         Required after 2002-04-01
   Check that the view created by a view conversion is constrained if
   the target subtype is indefinite. (Technical Corrigendum
   4.6(54/1)).
   [A2_4D] Corrected a discriminant reference.

C490001 [Modified] VCS Label: A2_4C
   Removed requirement to round away from zero, as this conflicts
   with AI-268.

C490002 [Modified] VCS Label: A2_4C
   Removed requirement to round away from zero, as this conflicts
   with AI-268.

C52011A [Modified] VCS Label: A2_4C
   The assignments and checks @114 and 129 could be eliminated by
   11.6 permissions.

C52011B [Modified] VCS Label: A2_4C
   The assignments and checks @124 and 139 could be eliminated by
   11.6 permissions.

C58005H [Modified] VCS Label: A2_4C 
   The assignments and checks @117, 126, 135, and 144 could be
   eliminated by 11.6 permissions.

C731001 [Modified] VCS Label: A2_4D 
   The Verbose flag @52 should be False.

C760013 [New] VCS Label: A2_4C
   Check that Initialize is not called for default-initialized
   Subcomponents of the ancestor type of an extension aggregate.

C761006 [Modified] VCS Label: A2_4A
   Call to Good Adjust @291 need not be made (by change in Technical
   Corrigendum).

C761011 [New] VCS Label: A2_4A
   Check that the failure of a finalization of an object (in various
   cases) does not prevent other needed finalizations from occurring.

C761012 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that an anonymous object is finalized with its enclosing
   master if a transfer of control or exception occurs prior to its
   normal finalization (Technical Corrigendum 1, 7.6.1(13.1/1)).
	
B851001 [New] VCS Label: A2_4C
   Check that the restrictions on renaming components that depend on
   a discriminant are enforced in the public and private parts of an
   instance. Check that the restrictions on renaming components that
   depend on a discriminant are enforced in the body of a generic
   unit. Include the decendant of an untagged generic formal derived
   type case. (Technical Corrigendum 8.5.1(5/1)).

B854001 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that a renames-as-body is illegal if it occurs before
   the subprogram is frozen, and it renames the subprogram itself.
   (Technical Corrigendum 1, 8.5.4(5/1)).

C854003 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that a renames-as-body only requires mode conformance
   if it occurs before the subprogram is frozen. (Technical
   Corrigendum 1, 8.5.4(5/1)).

C86003A [Modified] VCS Label: A2_4C
   The assignment and check @76 could be eliminated by 11.6
   permissions.

C93005F [Modified] VCS Label: A2_4C
   The assignment and check @228 could be eliminated by 11.6
   permissions.

C94001E [Modified] VCS Label: A2_4C
   The assignment and check @58 could be eliminated by 11.6
   permissions.

CD10002 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that operational items are allowed in some contexts where
   representation items are not. Corrigendum 7.3(5), 13.1(10),
   13.1(11/1).

CD72A02 [Allowed Modification] New VCS Label: A2_4G Org VCS Label: A2_4
         Required after 2002-07-01
   The test description @37-38 refers to a non-existent test.

CDD1001 [New] VCS Label: A2_4A
   Check that components of Stream_Element_Array are aliased.
   Corrigendum 13.13.1(4/1).

CDD2001 [Pending New] New VCS Label: A2_4A
         Required after 2002-01-01
   Check that the default implementation of Read and Input raise
   End_Error if the end of stream is reached before the reading of
   a value is completed. Corrigendum 13.13.2(35.1/1).

BDD2002 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that a limited type extension is illegal if the parent type
   has user defined Read or Write attributes, and a limited extension
   component does not have user-defined Read or Write attributes.
   Corrigendum 13.13.2(9/1).

CDD2A01 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that the default Read and Write attributes for a type
   extension are created from the parent type's attributes and the
   attributes of any extension components. Also checks that the
   default Input and Output attributes are always used for a type
   extension. Corrigendum 13.13.2(9/1) and 13.13.2(25/1).

CDD2A02 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that the Read, Write, Input, and Output attributes for an
   untagged type are inherited from the parent type. Corrigendum
   13.13.2(8.1/1) and 13.13.2(25/1).

CDD2A03 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Check that the default Read and Write attributes for a limited
   type extension are created from the parent type's attributes
   and the attributes of any extension components. Also checks that 
   the Read and Write attributes for such a type can be called.
   Corrigendum 13.13.2(9/1) and 13.13.2(36/1).

CE2120A [Withdrawn] Org VCS Label: A2_4
   A.8.2(22) is Implementation Advice, not a requirement.

CE2120B [Withdrawn] Org VCS Label: A2_4
   A.8.2(22) is Implementation Advice, not a requirement.

CE3119A [Withdrawn] Org VCS Label: A2_4
   A.8.2(22) is Implementation Advice, not a requirement.

CXA4005 [New] VCS Label: A2_4A
   Added checks that the lower bound of function results is 1.
   [Note: This is an enhancement of an existing test and replaces it.]

CXA4016 [New] VCS Label: A2_4A
   Added checks that the lower bound of function results is 1.
   [Note: This is an enhancement of an existing test and replaces it.]

CXA4034 [New] VCS Label: A2_4A
   Check that Ada.Strings.Bounded.Slice and
   Ada.Strings.Wide_Bounded.Slice raise Index_Error as needed.

CXA5011 [Modified] VCS Label: A2_4A
   Conversions @361 and @408 may raise Constraint_Error if Integer is
   16-bits in size.

CXA5A10 [Allowed Modification] New VCS Label: A2_4E Org VCS Label: A2_4
         Required after 2002-04-01
   The subtest @172-202 should apply only if 'Machine_Overflows is
   True (A.5.1(28, 30)).

CXAA019 [New] VCS Label: A2_4A
   Check that the parameter mode of Ada.Text_IO.Flush and
   Ada.Streams.Stream_IO.Flush is 'in'.

CXAC002 [Modified] VCS Label: A2_4A
   The Not_Applicable case @276 should raise Incomplete.

CXAC003 [New] VCS Label: A2_4A
   Added a check that Stream raises Status_Error if its argument
   is not open.
   [Note: This is an enhancement of an existing test and replaces it.]

CXAC005 [New] VCS Label: A2_4A
   Check that operations of Stream_IO update the index properly.

CXB3010 [Modified] VCS Label: A2_4A
   Assignment @287 might raise Constraint_Error, obscuring the
   subtest objective.

FDD2A00 [Pending New] New VCS Label: A2_4F
         Required after 2002-07-01
   Foundation for stream attribute tests.

MACRO.DFS [Modified] VCS Label: A2_4B
   Substitutions for withdrawn tests were removed.

===== Annex C =====
[None]

===== Annex D =====
[None]

===== Annex E =====
CXE4002 [Modified] VCS Label: A2_4A
   A race condition at start time might cause the test to fail
   unnecessarily.

CXE4004 [Modified] VCS Label: A2_4A
   A race condition at start time might cause the test to fail
   unnecessarily.

CXE4005 [Modified] VCS Label: A2_4A
   A race condition at start time might cause the test to fail
   unnecessarily.

===== Annex F =====
[None]

===== Annex G =====
CXG2008 [New] VCS Label: A2_4A
   Added checks that the non-generic packages are declared Pure.
   [Note: This is an enhancement of an existing test and replaces it.]

===== Annex H =====
[None]

 

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_4G 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. [In case of a conflict, the files in the ACATS VCS should be considered the 'official' versions.]

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.4 is available in various formats on the ACAA web site.

 

Summary lists:

Withdrawn Tests

(Refer to the main list for details)

CE2120A
CE2120B
CE3119A

Allowed Modification Tests

(Refer to the main list for details)

B3A2009   2002-07-01
B460005   2002-04-01
CD72A02   2002-07-01
CXA5A10   2002-04-01
CXG2012   2002-04-01

Modified Tests

(Refer to the main list for details)

B330001
C490001
C490002
C52011A
C52011B
C58005H
C731001
C761006
C86003A
C93005F
C94001E
CDB0A02
CXA5011
CXAC002
CXB3010
CXE4002
CXE4004
CXE4005
MACRO.DFS

New Tests

(Refer to the main list for details)

B371001
B392011
B460005
B851001
C392013
C392014
C3A0015
C760013
C761011
CDD1001
CDD2001
CXA4005
CXA4016
CXA4034
CXAA019
CXAC003
CXAC005
CXG2008

Pending New Tests

(Refer to the main list for details)

B854001   2002-07-01
BDD2002   2002-07-01
C460012   2002-04-01
C761012   2002-07-01
C854003   2002-07-01
CD10002   2002-07-01
CDD2A01   2002-07-01
CDD2A02   2002-07-01
CDD2A03   2002-07-01
FDD2A00   2002-07-01