ACATS Test Modification List

Version 4.0C
December 30, 2014

What is this?

This is the ACATS modification list for ACATS 4.0. This document includes test corrections, test removals, and new tests for ACATS 4.0. ACATS 4.0 is the current test suite for Ada, covering the third edition of Ada, ISO/IEC 8652:2012 (usually known as "Ada 2012").

ACATS Modification List version 3.1D for ACATS 3.1 is the current list for that test suite. ACATS 3.1 should be used for testing implementations that support Amendment 1 (ISO/IEC 8652:1995/AMD 1:2007, often known as "Ada 2005"), and will continue to be maintained as necessary for the foreseeable future.

ACATS Modification List version 2.6D for ACATS 2.6 is the current list for that test suite. ACATS 2.6 should be used for testing implementations of the second edition of Ada, ISO/IEC 8652:1995 (usually known as "Ada 95"); it also will continue to be maintained as necessary for the foreseeable future.

Changes from the last list:

B3A2017 is a new test that checks 3.10.2(32/3).

C3A2004 is a new test that checks that the type of the prefix of 'Access can be used to help resolve the context.

Test B43102A is replaced by new test B431006, which checks that the rewording of 4.3.1(17/3) is enforced properly.

New test C550001 checks that for loops iterate in the correct order for subtypes with static predicates.

New tests B640001 and C640002 check that abstract nondispatching operations do not participate in resolution.

New tests B650005 and B650006 check Ada 2012 Legality Rules for extended return statements.

New test BA12017 checks that a limited with clause cannot name an ancestor package.

New test BA15003 checks that library unit pragmas cannot be given in a nested unit.

BC60001 is a new test that checks rules associated with a generic formal subprogram default of null (new in Ada 2005).

New test CXA5016 tests the Machine_Rounding attribute.

Six new tests (CXAA021, CXAA022, CXAB002, CXAB003, CXAB004, CXAB005) check operation of Bounded_IO, Unbounded_IO, and all of the wide variations of them.

New test CXAC008 checks that Stream_IO files are not truncated by Reset or Close.

New tests posted between October 1, 2014 and December 31, 2014 will become required for conformity assessments on July 1, 2015. New tests posted between July 1, 2014 and September 30, 2014 will become required for conformity assessments on April 1, 2015. All tests posted to modification lists for other versions of the ACATS are included in ACATS 4.0 if appropriate and thus are required for conformity assessment using ACATS 4.0 The effective dates of tests are marked in the lists.

Questions about this document? Contact the ACAA Technical Agent at agent@ada-auth.org.

Notice:

The ACAA has created and maintains the Ada Conformity Assessment Test Suite for the purpose of conformity assessments conducted in accordance with the International Standard ISO/IEC 18009 - Ada: Conformity assessment of a language processor. This test suite should not be used to make claims of conformance unless used in accordance with ISO/IEC 18009 and any applicable ACAA procedures.

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 standards are given in the format:
   <section|chapter>.<clause>[.<subclause>]:<paragraph>
These references are to the Ada standard as available at http://www.adaic.org/resources/add_content/standards/12rm/html/RM-TOC.html.

 

Main list:

===== Core Language =====

Name     Category  Version label  (effective date; old version label)
         Short description.

C3A2004 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that the type of the prefix of 'Access is used to resolve
        the expected type of the use of the attribute.

B3A2017 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check P'Access is not allowed in a generic body if P is declared
        in the generic (including in the parent of a child or in a formal
        package) and the access type is a formal type or outside of
        the generic.

C431002 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that a component association of others => <> in a record or
        extension aggregate may have any number of associated components,
        including none. (Case 2: Null records and extensions.)

B431005 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that a component association with an expression in a record
        or extension aggregate that have more than one associated
        component is illegal if the expression is illegal for any one of
        the associated components.

B431006 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that if a variant part is not nested in an unselected
        variant, the value of the governing discriminant of a variant in
        a record aggregate cannot be non-static.

B43102A [Withdrawn] VCS Label: A4_0C
        Replaced by B431006.

C433002 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that no array components can be outside of the index subtype
        for an array aggregate, even when the components are specified
        by <>.

C433003 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that for each association with a box in an array aggregate,
        the component is initialized by default (scalar types with
        Default_Values).

C433004 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that for each association with a box in an array aggregate,
        the component is initialized by default (array types with
        Default_Component_Values).

C433005 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that the constraint of the constrained array subtype of a
        function return is used to determine the bounds of an array
        aggregate with an others choice in the expression of a return
        statement.

C550001 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that for loops iterate properly over subtypes with static
        predicates.

B640001 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that abstract nondispatching operations do not participate
        in resolution.

C640002 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that an abstract nondispatching operator provides a way
        to eliminate an unwanted predefined operator.

B650005 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that the accessibility level of the return subtype
        indication of an extended return statement cannot be statically
        deeper that that of the function result if that result is
        class-wide.

B650006 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that an extended return statement with a constant return
        object cannot omit the initializing expression.

C760014 [Pending New] New VCS Label: A4_0A
                 Required after 2015-04-01
        Check that Ada.Finalization is declared pure.

BA12017 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that a limited with clause is not allowed on a
        descendant of the named package.

BA15003 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that a library unit pragma must apply to a library unit.

CB30001 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that the optional message parameter is supported in a raise
        statement, and that the message can be retrieved with
        Exception_Message.

CB30002 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Check that the optional message parameter is supported in a raise
        expression, and that the message can be retrieved with
        Exception_Message.

BC60001 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Test rules associated with formal subprogram defaults of null.

BDB3A01 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test resolution and legality rules for pragma and aspect
        Default_Storage_Pool.

CDB3A01 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that aspect Default_Storage_Pool changes the default storage
        pool for a generic instantiation.

BDD2004 [Allowed Modification] New VCS Label: A4_0B Org VCS Label: A4_0
                 Required after 2015-04-01
        Error @229 is legal by AI12-0121-1.

BDD2005 [Allowed Modification] New VCS Label: A4_0B Org VCS Label: A4_0
                 Required after 2015-04-01
        Replaced test cases waiting on AI12-0106-1 (now approved)
        and made changes required by AI12-0121-1.

CXA5016 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check operation of attribute Machine_Rounding.

CXAA021 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check file operations of Text_IO.Bounded_IO.

CXAA022 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check file operations of Text_IO.Unbounded_IO.

CXAB002 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check file operations of Wide_Text_IO.Wide_Bounded_IO.

CXAB003 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check file operations of Wide_Wide_Text_IO.Wide_Wide_Bounded_IO.

CXAB004 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check file operations of Wide_Text_IO.Wide_Unbounded_IO.

CXAB005 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check file operations of Wide_Wide_Text_IO.Wide_Wide_Unbounded_IO.

CXAC008 [Pending New] New VCS Label: A4_0C
                 Required after 2015-07-01
        Check that Stream_IO files opened with mode Out_File are not
        truncated by Close or Reset.

BXAI001 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Hashed_Maps does not allow reverse iterators.

BXAI002 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Hashed_Sets does not allow reverse iterators.

BXAI003 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Bounded_Hashed_Maps does not allow reverse
        iterators.

BXAI004 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Bounded_Hashed_Sets does not allow reverse
        iterators.

BXAI005 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Hashed_Sets does not allow direct writing of set
        elements.

BXAI006 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Ordered_Sets does not allow direct writing of
        set elements.

BXAI007 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Bounded_Hashed_Sets does not allow direct
        writing of set elements.

BXAI008 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Bounded_Ordered_Sets does not allow direct
        writing of set elements.

BXAIA01 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Indefinite_Hashed_Maps does not allow reverse
        iterators.

BXAIA02 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Indefinite_Hashed_Set does not allow reverse
        iterators.

BXAIA03 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Indefinite_Hashed_Sets does not allow direct
        writing of set elements.

BXAIA04 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Test that package Indefinite_Ordered_Sets does not allow direct
        writing of set elements.

CXAI027 [Allowed Modification] New VCS Label: A4_0B Org VCS Label: A4_0
                 Required after 2015-04-01
        Corrected the name of the package that is reported as being
        tested.

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

[None.]

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

[None.]

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

[None.]

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

[None.]

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

[None.]

===== Annex H =====

[None.]

===== Support =====

FDB3A00 [Pending New] New VCS Label: A4_0B
                 Required after 2015-07-01
        Foundation for test BDB3A01 and CDB3A01.

 

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 at www.ada-auth.org.

The complete set of official new and modified tests are available in the Mod_4_0C.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 4.0 is available in various formats on the ACAA web site.

 

Summary lists:

Withdrawn Tests

(Refer to the main list for details)

B43102A

Allowed Modification Tests

(Refer to the main list for details)

BDD2004  2015-04-01
BDD2005  2015-04-01
CXAI027  2015-04-01

Modified Tests

(Refer to the main list for details)

None.

New Tests

(Refer to the main list for details)

None.

Pending New Tests

(Refer to the main list for details)

B3A2017	2015-07-01
B431005	2015-07-01
B431006	2015-07-01
B640001	2015-07-01
B650005	2015-07-01
B650006	2015-07-01
BA12017	2015-07-01
BA15003	2015-07-01
BC60001	2015-07-01
BDB3A01	2015-07-01
BXAI001	2015-07-01
BXAI002	2015-07-01
BXAI003	2015-07-01
BXAI004	2015-07-01
BXAI005	2015-07-01
BXAI006	2015-07-01
BXAI007	2015-07-01
BXAI008	2015-07-01
BXAIA01	2015-07-01
BXAIA02	2015-07-01
BXAIA03	2015-07-01
BXAIA04	2015-07-01
C3A2004	2015-07-01
C431002	2015-07-01
C433002	2015-07-01
C433003	2015-07-01
C433004	2015-07-01
C433005	2015-07-01
C550001	2015-07-01
C640002	2015-07-01
C760014	2015-04-01
CB30001	2015-07-01
CB30002	2015-07-01
CDB3A01	2015-07-01
CXA5016	2015-07-01
CXAA021	2015-07-01
CXAA022	2015-07-01
CXAB002	2015-07-01
CXAB003	2015-07-01
CXAB004	2015-07-01
CXAB005	2015-07-01
CXAC008	2015-07-01
FDB3A00	2015-07-01