ACATS Test Modification List

Version 2.6E
March 31, 2017

Changes from the last list:

The main list had an incorrect test name, mentioning CXD8002 instead of BXE2009. (The summary lists were correct.)

Test B74203E used a number of attributes that are not defined in Ada 95, thus failing to test the objective. It was replaced by test B730013, which tests additional cases including attributes added by Ada 95.

New test C453001 checks that modular adding operators wrap around for various user-defined and language-defined types.

New test C460014 checks that access type conversions make appropriate tag checks. This checks 4.6(42) via 4.6(50).

A number of (very old) tests were withdrawn as their objectives and code are nearly identical to other tests. Such tests serve no purpose other than making the ACATS take longer to process. The tests in question are:

Tests CD2A21C and CD2A31C were also withdrawn to be replaced by new tests CD30011 and CD30012, respectively. The new tests ensure that none of the checks of the withdrawn tests are lost, while adding applicability criteria and modern formatting.

Many of the tests in ACATS 2.6 are incompatible with Ada 2005. ACATS 2.6 is intended for testing Ada 95 compatibility only; use ACATS 3.1 for testing Ada 2005 and ACATS 4.1 for testing Ada 2012.

No further new tests are expected for version 2 of the ACATS test suite (future development will be done on the Ada 2012 version, which is version 4.1 of the ACATS test suite). However, if a new test developed for Ada 2012 is appropriate for Ada 95, it may be added to this version of the test suite. New tests posted between January 1, 2017 and March 31, 2017 will become required for conformity assessments on October 1, 2017. New tests added to the ACATS before April 1, 2016 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.

C433001 [Modified] VCS Label:A2_6D
        Messages @85, 107 should refer to Second_Component and messages
        @88, 110 should refer to Last_Component.

C453001 [Pending New] New VCS Label: A2_6E
                 Required after 2017-10-01
        Check that modular adding operators wrap around rather than
        raising Constraint_Error.

C460013 [New] VCS Label: A2_6A
        Check that null excluding subtypes do not allow null values:
        access parameters. Includes a check for the not null syntax
        as required in Ada 95 by AI-447.

C460014 [Pending New] New VCS Label: A2_6E
                 Required after 2017-10-01
        Check that Constraint_Error is raised appropriately when
        converting access-to-classwide to another access type.

B730013 [Pending New] New VCS Label: A2_6E
                 Required after 2017-10-01
        Test operations available for a private type; replaces test
        B74203E.

B74203E [Withdrawn] VCS Label: A2_6E
        Replaced by B730013.

C761006 [Modified] VCS Label: A2_6D
        Rewrite test to not fail if the deallocated object is finalized
        twice. (This is allowed by AI95-0179-1.)

CB41004 [Modified] VCS Label: A2_6B
        Test case @99-107 should allow Constraint_Error to be raised, as
        per the Binding Interpretation AI-446.

CD1009A [Withdrawn] VCS Label: A2_6E
        Has one of the objectives of, and thus redundant with, test
        CD2A31C (now CD30012).

CD1009B [Withdrawn] VCS Label: A2_6E
        Has one of the objectives of, and thus redundant with, test
        CD2A21C (now CD30011).

CD1009L [Withdrawn] VCS Label: A2_6E
        Virtually identical to, and thus redundant with, test CD2D13A.

CD1009M [Withdrawn] VCS Label: A2_6E
        Virtually identical to, and thus redundant with, test CD3014C.

CD2A21C [Withdrawn] VCS Label: A2_6E
        Replaced by CD30011.

CD2A31C [Withdrawn] VCS Label: A2_6E
        Replaced by CD30012.

CD30011 [Pending New] New VCS Label: A2_6E
                 Required after 2017-10-01
        Merges legacy tests CD1009B and CD2A21C to eliminate duplication
        (CD1009B has the same objective as one of the objectives of
        CD2A21C) while adding modern formatting and applicability criteria.

CD30012 [Pending New] New VCS Label: A2_6E
                 Required after 2017-10-01
        Merges legacy tests CD1009A and CD2A31C to eliminate duplication
        (CD1009A has the same objective as one of the objectives of
        CD2A31C) while adding modern formatting and applicability criteria.

CXAC005 [Modified] VCS Label: A2_6A
        The function @114-7 may raise Program_Error for some
        implementations of Stream_IO.File_Type.

===== Annex C =====

BXC3002 [Modified] VCS Label:A2_6D
        Declaration @103 is not illegal as Amendment repealed the relevant
        rule.

CXC7001 [Modified] VCS Label: A2_6B
        Checks at @165 and @177 are backwards.

===== Annex D =====

[None]

===== Annex E =====

BXE2009 [Modified] VCS Label: A2_6A
        Package Ada.Finalization @140 is not a "normal" package.

===== Annex F =====

[None]

===== Annex G =====

[None]

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

 

Summary lists:

Withdrawn Tests

(Refer to the main list for details)

B74203E
CD1009A
CD1009B
CD1009L
CD1009M
CD2A21C
CD2A31C

Allowed Modification Tests

(Refer to the main list for details)

[None.]

Modified Tests

(Refer to the main list for details)

BXC3002
BXE2009
C433001
C761006
CB41004
CXAC005
CXC7001

New Tests

(Refer to the main list for details)

C460013

Pending New Tests

(Refer to the main list for details)

B730013  2017-10-01
C453001  2017-10-01
C460014  2017-10-01
CD30011  2017-10-01
CD30012  2017-10-01