CVS difference for acats/docs/mod_list.txt

Differences between 1.102 and version 1.103
Log of other versions for file acats/docs/mod_list.txt

--- acats/docs/mod_list.txt	2021/07/01 06:54:15	1.102
+++ acats/docs/mod_list.txt	2021/10/01 06:17:55	1.103
@@ -1,45 +1,25 @@
 ACATS Modification List for ACATS 4.1
-Version 4.1W
-June 30, 2021
+Version 4.1X
+September 30, 2021
 
 
 What is this?
 
 This is the ACATS modification list for ACATS 4.1. This document includes test corrections, test removals, and new tests for ACATS 4.1. ACATS 4.1 is the current test suite for Ada, covering the third edition of Ada, ISO/IEC 8652:2012 (usually known as "Ad
a 2012").
 
-ACATS Modification List version 3.1CC 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 m
aintained as necessary for the foreseeable future.
+ACATS Modification List version 3.1CC 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 m
aintained only as necessary for the foreseeable future.
 
-ACATS Modification List version 2.6J 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 maint
ained as necessary for the foreseeable future.
+ACATS Modification List version 2.6J 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 maint
ained only as necessary for the foreseeable future.
 
 Changes from the last list:
 
-A handful of tests changed status on April 1st; see the lists for the details.
+A handful of tests changed status on July 1st; see the lists for the details.
 
-New tests B324004 and C324006 test rules associated with the Predicate_Failure aspect.
+New tests BDC1001, BDC1002, and BDC1003 test various restrictions.
 
-Test B416001 was corrected to comment out Priv2, as it is the questionable construct discussed in AI12-0428-1. That AI modified the rules to clarify that this example is legal, but by convention, we do not require Binding Interpretations from later langua
ge versions in a previous version. As such, this test case was removed for Ada 2012 (it will be replaced, along with adding one like the one in the AI, in the Ada 202x test suite.)
-
-Test B830001 was split into 6 files so that correct units and units with errors were not mixed; and (by putting one error per file), making the test more realistic (multiple units in a source file is rare) and the results become purely pass/fail.
-
-New tests B830003, B830004, and B830005 replace tests B83004A, B83004B, B83004C, B83004D. The original tests caused many spurious errors in every Ada implementation that the ACAA tested; those errors prevented any implementation from formally passing the 
tests without making a large number of test splits. We rearranged the test cases to avoid many of the spurious errors; split the remaining cases into separate test files, eliminated redundant tests for separately compiled units, and added test cases for pr
otected objects and null procedures. New test B830006 has similar cases for expression functions. The original tests have been withdrawn.
-
-Test B950001 was corrected to comment out test case 149. These prefixed views are of an abstract subprogram; while a dispatching call on one of these views is legal, it is unclear whether such a dispatching view can be passed as a generic formal subprogra
m and whether a rename of such a view is abstract. Until the ARG settles this question, the test case was removed. Additionally, the test contained a number of style errors (mostly overlong lines), and lines were broken to eliminate those. Doing that neces
sitated adding error location indicators to ensure that automatic grading would remain possible.
-
-New test BC10001 replaces BC2001D and BC2001E (which are withdrawn), adding checks for protected units and eliminating the need for complex syntax error recovery or test splitting. While we want the ACATS to encourage error detection and recovery, the des
ign mistake embodied in these tests is significant enough and unlikely enough that it needs to be corrected before worrying about other details. Thus the sort of error recovery needed for the old tests was very unlikely to be helpful in practice; moreover 
no existing compiler was completely successful at such recovery.
-
-Many tests have been improved with error location indications, as well as the removal of overlong lines, misformatted or mislocated error markers, and comment corrections. These tests had issues with error locations when graded with the ACATS grading tool
s; most did not pass grading with any existing Ada 2012 compiler (while passing when hand-graded). These tests are:
-B324001, B35901C, B36102A, B370002, B41327B, B415001, B43201A, B43201C, B43202C, B433002, B433003, B457002, B457005, B457007, B460002, B480002, B49005A, B551001, B650003, B650005, B660001, B730007, B730008 , B730009, B740002, B74101A, B74104A, B83001A, B8
3003A, B83003B, B95094A, B950002, BA21A01, BC1201F, BC1201G, BC1201H, BC1201I, BC30001, BC3013A, BC3018A, BC60001, BC60002, BD11001, BDE0007, BXAI005, BXAI006, BXAI007, BXAI008, BXAIA03, and BXAIA04.
-
-[Note: We're doing these now so that the corrections can be part of the next ACATS baseline, expected in October. This batch is expected to be the last significant set of tests changed for this reason.]
-
-Tests CXAI001, CXAI010, and CXAIA01 were modified to be compatible with AI12-0400-1. Note that that AI gives a recommendation that the Ada 2012 ACATS test that the new names of these operations are available; the ACAA is following that recommendation. Thi
s change was judged as relatively cheap to implement. Whether routines with the old names are also provided is not checked; it is allowed for Ada 2012 (but not for Ada 202x implementations).
-
-Test CXB3013 contains C code with a call to Malloc that C standards require a declaration. As such, “#include <stdlib.h>” was added to file CXB30131.C. Note that the ACATS allows foreign language code to be modified by implementers as needed, so the new i
nclude can be removed if it causes a problem for some target.
-
-
 Note: Some Allowed Modification tests have a required date of “ACATS 4.2”. These are tests that don't have substantive changes, but rather change comments (including error locations for B-Tests). For ACATS users that are using traditional results comparis
on rather than the ACATS grading tools, changing these tests may cause work without benefit (since the tests don't have significant changes). As such, we're allowing the use of the old versions of the tests until the time when the next ACATS version (ACATS
 4.2) is issued (not likely before fall 2021; it will be announced at least 90 days in advance of issuance).
 
-New tests posted between April 1, 2021 and June 30, 2021 will become required for conformity assessments on January 1, 2022. New tests posted between January 1, 2021 and March 31, 2021 will become required for conformity assessments on October 1, 2021. Ne
w tests posted between October 1, 2020 and December 31, 2020 will become required for conformity assessments on July 1, 2021.New tests posted before October 1, 2020 are required for conformity assessments. The effective dates of tests are marked in the lis
ts. 
+New tests posted between July 1, 2021 and September 30, 2021 will become required for conformity assessments on April 1, 2022. New tests posted between April 1, 2021 and June 30, 2021 will become required for conformity assessments on January 1, 2022. New
 tests posted between January 1, 2021 and March 31, 2021 will become required for conformity assessments on October 1, 2021. New tests posted before January 1, 2021 are required for conformity assessments. The effective dates of tests are marked in the lis
ts. 
 
 Questions about this document? Contact the ACAA Technical Agent at agent@ada-auth.org.
 
@@ -269,13 +249,11 @@
 	Added additional error locations to directly support common error
 	reporting strategies. Fixed overlong lines.
 
-B393012 [Pending New] New VCS Label: A4_1P
-			Required after 2020-07-01
+B393012 [New] VCS Label: A4_1P
 	Check that abstract types cannot be used in additional
 	contexts that do not allow abstract types.
 
-B393013 [Pending New] New VCS Label: A4_1P
-			Required after 2020-07-01
+B393013 [New] VCS Label: A4_1P
 	Check that interface types cannot be used in additional contexts
 	that do not allow abstract types.
 
@@ -637,15 +615,12 @@
 	Check that Pre and Post are not allowed on
 	abstract subprograms and null procedures.
 
-B611006 [New] VCS Label: A4_1C
+B611006 [New] VCS Label: A4_1V
 	[VCS Label A4_1A] Check that the restrictions on Pre'Class and
 	Post'Class expressions added by AI12-0113-1 are enforced.
 	[VCS Label A4_1C] Clarified error @208; changed error @233 & @247
 	to OK (as the inherited Proc4 routine is abstract and thus is not
 	subject to	the new rule).
-
-B611006 [Allowed Modification] New VCS Label: A4_1V Org VCS Label: A4_1C
-			Required after 2021-07-01
 	[VCS Label A4_1V] Eliminated the third objective (all of the code
 	under the “Third Objective” comment), as the rule was replaced by
 	AI12-0412-1 (a Binding Interpretation).
@@ -1372,8 +1347,7 @@
 	Checks that the null exclusion of the formal type and of the
 	actual subtype for a generic formal access type must match.
 
-BC55001 [Pending New] New VCS Label: A4_1P
-			Required after 2020-07-01
+BC55001 [New] VCS Label: A4_1P
 	Check that formal interface types cannot be used in contexts that
 	do not allow abstract types.
 
@@ -1470,11 +1444,22 @@
 	illegal if the access type has a Storage_Size that is statically
 	zero.
 
-BDB4001 [Pending New] New VCS Label: A4_1P
-			Required after 2020-07-01
+BDB4001 [New] VCS Label: A4_1P
 	Check that the object for a pool that supports subpools is
 	declared in the same scope as the access type that uses it.
 
+BDC1001 [Pending New] New VCS Label: A4_1X
+			Required after 2021-04-01
+	Check that restriction No_Use_of_Attribute is implemented.
+
+BDC1002 [Pending New] New VCS Label: A4_1X
+			Required after 2021-04-01
+	Check that restriction No_Specification_of_Aspect is implemented.
+
+BDC1003 [Pending New] New VCS Label: A4_1X
+			Required after 2021-04-01
+	Check that restriction No_Use_of_Pragma is implemented.
+
 BDD2003 [Modified] VCS Label: A4_1G
 	Added additional error locations to directly support common error
 	reporting strategies.
@@ -1568,8 +1553,7 @@
 	Changed the names of operations to be compatible with the ruling
 	of AI12-0400-1. Also fixed some overlong lines.
 
-CXAIB01 [Pending New] VCS Label: A4_1U
-			Required after 2021-07-01
+CXAIB01 [New] VCS Label: A4_1U
 	[VCS Label A4_1T] Check that Ada.Containers.Vectors is
 	preelaborated, and it and types declared in it can be used in
 	preelaborated packages.
@@ -1577,8 +1561,7 @@
 	some Insert calls. Qualified aggregates to avoid issues for Ada
 	202x.
 
-CXAIB02 [Pending New] VCS Label: A4_1U
-			Required after 2021-07-01
+CXAIB02 [New] VCS Label: A4_1U
 	[VCS Label A4_1T] Check that Ada.Containers.Bounded_Vectors is
 	preelaborated, and it and types declared in it can be used in
 	preelaborated packages.
@@ -1586,42 +1569,36 @@
 	some Insert calls. Qualified aggregates to avoid issues for Ada
 	202x.
 
-CXAIB03 [Pending New] VCS Label: A4_1U
-			Required after 2021-07-01
+CXAIB03 [New] VCS Label: A4_1U
 	[VCS Label A4_1T] Check that Ada.Containers.Doubly_Linked_Lists is
 	preelaborated, and it and types declared in it can be used in
 	preelaborated packages.
 	[VCS Label A4_1U] Corrected instance prefix of No_Element in
 	some Insert calls.
 
-CXAIB04 [Pending New] VCS Label: A4_1U
-			Required after 2021-07-01
+CXAIB04 [New] VCS Label: A4_1U
 	[VCS Label A4_1T] Check that
 	Ada.Containers.Bounded_Doubly_Linked_Lists is preelaborated, and
 	it and types declared in it can be used in preelaborated packages.
 	[VCS Label A4_1U] Corrected instance prefix of No_Element in
 	some Insert calls.
 
-CXAIB05 [Pending New] VCS Label: A4_1T
-			Required after 2021-07-01
+CXAIB05 [New] VCS Label: A4_1T
 	Check that Ada.Containers.Ordered_Maps is preelaborated,
 	and it and types declared in it can be used in preelaborated
 	packages.
 
-CXAIB06 [Pending New] VCS Label: A4_1T
-			Required after 2021-07-01
+CXAIB06 [New] VCS Label: A4_1T
 	Check that Ada.Containers.Bounded_Ordered_Maps is preelaborated,
 	and it and types declared in it can be used in preelaborated
 	packages.
 
-CXAIB07 [Pending New] VCS Label: A4_1T
-			Required after 2021-07-01
+CXAIB07 [New] VCS Label: A4_1T
 	Check that Ada.Containers.Hashed_Maps is preelaborated,
 	and it and types declared in it can be used in preelaborated
 	packages.
 
-CXAIB08 [Pending New] VCS Label: A4_1T
-			Required after 2021-07-01
+CXAIB08 [New] VCS Label: A4_1T
 	Check that Ada.Containers.Bounded_Hashed_Maps is preelaborated,
 	and it and types declared in it can be used in preelaborated
 	packages.
@@ -1760,8 +1737,7 @@
 FDD2B00 [New] VCS Label: A4_1Q
 	A foundation for Stream_Size aspect tests.
 
-FXAIB00 [Pending New] VCS Label: A4_1T
-			Required after 2021-07-01
+FXAIB00 [New] VCS Label: A4_1T
 	A foundation for container preelaboration tests.
 
 GRADE.A [Modified] VCS Label: A4_1G
@@ -1889,7 +1865,6 @@
 B551001	ACATS 4.2
 B56001A	ACATS 4.2
 B57001B	ACATS 4.2
-B611006	2021-07-01 [VCS Label A4_1V]
 B650003	ACATS 4.2
 B650005	ACATS 4.2
 B660001	ACATS 4.2
@@ -2093,7 +2068,7 @@
 B611003
 B611004
 B611005
-B611006 [VCS Label A4_1C]
+B611006
 B611007
 B611008
 B611009
@@ -2201,6 +2176,14 @@
 CDD2B04
 CXAC009
 CXAG003
+CXAIB01
+CXAIB02
+CXAIB03
+CXAIB04
+CXAIB05
+CXAIB06
+CXAIB07
+CXAIB08
 CXB3023
 CXB3024
 F350A00
@@ -2210,6 +2193,7 @@
 F611A00
 F611B00
 FDD2B00
+FXAIB00
 
 Pending New Tests
 
@@ -2223,16 +2207,11 @@
 B830005	2022-01-01
 B830006	2022-01-01
 BC10001	2022-01-01
+BDC1001	2022-04-01
+BDC1002	2022-04-01
+BDC1003	2022-04-01
 C324006	2022-01-01
 C641002	2021-10-01
 C641003	2021-10-01
-CXAIB01	2021-07-01
-CXAIB02	2021-07-01
-CXAIB03	2021-07-01
-CXAIB04	2021-07-01
-CXAIB05	2021-07-01
-CXAIB06	2021-07-01
-CXAIB07	2021-07-01
-CXAIB08	2021-07-01
-FXAIB00	2021-07-01
+
 

Questions? Ask the ACAA Technical Agent