CVS difference for ai12s/ai12-0018-1.txt

Differences between 1.1 and version 1.2
Log of other versions for file ai12s/ai12-0018-1.txt

--- ai12s/ai12-0018-1.txt	2012/01/26 07:10:10	1.1
+++ ai12s/ai12-0018-1.txt	2014/12/05 03:57:21	1.2
@@ -1,4 +1,4 @@
-!standard A.16(112/3)                             12-01-25    AI12-0018-1/01
+!standard A.16(112/3)                             14-12-04    AI12-0018-1/02
 !standard A.17(23/3)
 !class Amendment 12-01-25
 !status work item 12-01-25
@@ -10,13 +10,13 @@
 
 **TBD.
 
-!question
+!problem
 
 Each edition of the Ada standard adds new entities, sometimes to existing
 Ada packages. Compilers will want to be able to warn on the use of new
 entities when compiling for older standard versions, and similarly on the use of
-implementation-defined entities. (Or even reject in the scope of an appropriate
-restriction.)
+implementation-defined entities. In addition, users want to be able to avoid
+use of newer entities in their program.
 
 !proposal
 
@@ -36,6 +36,29 @@
 For language-defined entities, the Ada_Edition value should be set to the
 first edition of Ada in which the entity appeared.
 
+Define additional restriction identifiers. Each of the following applies
+to the current compilation or environment, not the entire partition. 
+
+No_Ada_2005_Entities
+There are no usage names that denote the declaration of an entity with an
+Ada_Edition of Ada_2005, Ada_2012, or Ada_2020.
+
+No_Ada_2012_Entities
+There are no usage names that denote the declaration of an entity with an
+Ada_Edition of Ada_2012 or Ada_2020.
+
+No_Ada_2020_Entities
+There are no usage names that denote the declaration of an entity with an
+Ada_Edition of Ada_2020.
+
+No_Implementation_Defined_Entities
+There are no usage names that denote the declaration of an entity with an
+Ada_Edition of Implementation_Defined.
+
+No_Third_Party_Defined_Entities
+There are no usage names that denote the declaration of an entity with an
+Ada_Edition of Third_Party_Defined.
+
 !discussion
 
 [Should we define an attribute to query the edition?]
@@ -44,10 +67,6 @@
 aren't user-defined (at least by the typical user of the library) and also
 aren't (necessarily) defined by an implementer. GUI libraries would typically
 have this edition value.
-
-[Should we have a restriction against the use of any Implementation_Defined or
-Third_Party_Defined entities in a unit (clearly this has to be a unit-by-unit
-requirement)?]
 
 !ACATS test
 

Questions? Ask the ACAA Technical Agent