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

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

--- ai12s/ai12-0414-1.txt	2020/12/11 22:22:26	1.2
+++ ai12s/ai12-0414-1.txt	2021/02/13 04:12:29	1.3
@@ -1,7 +1,35 @@
-!standard A.2(2)                                      20-12-11  AI12-0414-1/00
+!standard 13.7(3/2)                                     21-02-10  AI12-0414-1/01
+!standard 13.7.1(2/2)
+!standard A.1(4)
+!standard A.2(2)
+!standard A.2(3)
 !standard A.3.1(2)
 !standard A.3.1(4/2)
 !standard A.3.1(6/2)
+!standard A.3.2(2/2)
+!standard A.3.3(3)
+!standard A.3.4(2/2)
+!standard A.3.5(3/3)
+!standard A.4.1(3)
+!standard A.4.2(3/2)
+!standard A.4.6(3/2)
+!standard A.4.9(2/3)
+!standard A.4.9(11.2/3)
+!standard A.4.10(2/3)
+!standard A.4.10(13/3)
+!standard A.4.11(3/3)
+!standard A.4.11(15/3)
+!standard A.4.11(22/3)
+!standard A.4.11(30/3)
+!standard A.4.11(38/3)
+!standard A.5(3/2)
+!standard A.13(3)
+!standard A.18.1(3/2)
+!standard A.19(3/3)
+!standard B.2(3)
+!standard B.3(4)
+!standard B.5(4)
+!standard F.2(2)
 !class presentation 20-12-03
 !status Amendment 1-2012 20-12-11
 !status ARG Approved 15-0-0  20-12-09
@@ -29,13 +57,402 @@
 
 !wording
 
-** Editor: I still have to go through the entire RM looking for categorization
-pragmas and record the paragraph numbers. The first four are in the !standards
-above. **
+Modify the following paragraphs (all categorization pragmas in headers of
+language-defined paragraphs):
 
+13.7(3/2)
+13.7.1(2/2)
+A.1(4)
+A.2(2)
+A.3.1(2)
+A.3.1(4/2)
+A.3.1(6/2)
+A.3.2(2/2)
+A.3.3(3)
+A.3.4(2/2)
+A.3.5(3/3)
+A.4.1(3)
+A.4.2(3/2)
+A.4.6(3/2)
+A.4.9(2/3)
+A.4.9(11.2/3)
+A.4.10(2/3)
+A.4.10(13/3)
+A.4.11(3/3)
+A.4.11(15/3)
+A.4.11(22/3)
+A.4.11(30/3)
+A.4.11(38/3)
+A.5(3/2)
+A.13(3)
+A.18.1(3/2)
+A.19(3/3)
+B.2(3)
+B.3(4)
+B.5(4)
+E.4.1(2) -- Part of an example.
+E.4.1(3) -- Part of an example.
+F.2(2)
+
+Modify A.2(3):
+
+Ada serves as the parent of most of the other language-defined library units; 
+its declaration is empty[ (except for the pragma Pure)]. 
+
+Modify A.4.7(46.2/2) (as modified by AI12-0302-1):
+
+{Aspect}[Pragma] Pure is replaced by aspects [with] Preelaborate, Nonblocking,
+Global => in out synchronized in Strings.Wide_Maps.Wide_Constants.
+
+Modify A.4.8(50/2) (as modified by AI12-0302-1):
+
+{Aspect}[Pragma] Pure is replaced by aspects [with] Preelaborate, Nonblocking,
+Global => in out synchronized in Strings.Wide_Wide_Maps.Wide_Wide_Constants.
+
 !discussion
 
 Consistency is good.
+
+!corrigendum 13.7(3/2)
+
+@drepl
+@xcode<@b<package> System @b<is>
+   @b<pragma> Pure(System);>
+@dby
+@xcode<@b<package> System
+   @b<with> Pure @b<is>>
+
+!corrigendum 13.7.1(2/2)
+
+@drepl
+@xcode<@b<package> System.Storage_Elements @b<is>
+   @b<pragma> Pure(Storage_Elements);>
+@dby
+@xcode<@b<package> System.Storage_Elements
+   @b<with> Pure @b<is>>
+
+!corrigendum A.1(4)
+
+@drepl
+@xcode<@b<package> Standard @b<is>
+   @b<pragma> Pure(Standard);>
+@dby
+@xcode<@b<package> Standard
+   @b<with> Pure @b<is>>
+
+!corrigendum A.2(2)
+
+@drepl
+@xcode<@b<package> Ada @b<is>
+    @b<pragma> Pure(Ada);
+@b<end> Ada;>
+@dby
+@xcode<@b<package> Ada
+   @b<with> Pure @b<is>
+@b<end> Ada;>
+
+!corrigendum A.2(3)
+
+@drepl
+Ada serves as the parent of most of the other language-defined library units; 
+its declaration is empty (except for the pragma Pure). 
+@dby
+Ada serves as the parent of most of the other language-defined library units; 
+its declaration is empty. 
+
+!corrigendum A.3.1(2)
+
+@drepl
+@xcode<@b<package> Ada.Characters @b<is>
+  @b<pragma> Pure(Characters);
+@b<end> Ada.Characters;>
+@dby
+@xcode<@b<package> Ada.Characters
+   @b<with> Pure @b<is>
+@b<end> Ada.Characters;>
+
+!corrigendum A.3.1(4/2)
+
+@drepl
+@xcode<@b<package> Ada.Wide_Characters @b<is>
+  @b<pragma> Pure(Wide_Characters);
+@b<end> Ada.Wide_Characters;>
+@dby
+@xcode<@b<package> Ada.Wide_Characters
+   @b<with> Pure @b<is>
+@b<end> Ada.Wide_Characters;>
+
+!corrigendum A.3.1(6/2)
+
+@drepl
+@xcode<@b<package> Ada.Wide_Wide_Characters @b<is>
+  @b<pragma> Pure(Wide_Wide_Characters);
+@b<end> Ada.Wide_Wide_Characters;>
+@dby
+@xcode<@b<package> Ada.Wide_Wide_Characters
+   @b<with> Pure @b<is>
+@b<end> Ada.Wide_Wide_Characters;>
+
+!corrigendum A.3.2(2/2)
+
+@drepl
+@xcode<@b<with> Ada.Characters.Conversions;
+@b<package> Ada.Characters.Handling @b<is>
+  @b<pragma> Pure(Handling);>
+@dby
+@xcode<@b<with> Ada.Characters.Conversions;
+@b<package> Ada.Characters.Handling
+  @b<with> Pure @b<is>>
+
+!corrigendum A.3.3(3)
+
+@drepl
+@xcode<@b<package> Ada.Characters.Latin_1 @b<is>
+  @b<pragma> Pure(Latin_1);>
+@dby
+@xcode<@b<package> Ada.Characters.Latin_1
+  @b<with> Pure @b<is>>
+
+!corrigendum A.3.4(2/2)
+
+@drepl
+@xcode<@b<package> Ada.Characters.Conversions @b<is>
+  @b<pragma> Pure(Conversions);>
+@dby
+@xcode<@b<package> Ada.Characters.Conversions
+  @b<with> Pure @b<is>>
+
+!corrigendum A.3.5(3/3)
+
+@drepl
+@xcode<@b<package> Ada.Wide_Characters.Handling @b<is>
+  @b<pragma> Pure(Handling);>
+@dby
+@xcode<@b<package> Ada.Wide_Characters.Handling
+  @b<with> Pure @b<is>>
+
+!corrigendum A.4.1(3)
+
+@drepl
+@xcode<@b<package> Ada.Strings @b<is>
+  @b<pragma> Pure(Strings);>
+@dby
+@xcode<@b<package> Ada.Strings
+  @b<with> Pure @b<is>>
+
+!corrigendum A.4.2(3/2)
+
+@drepl
+@xcode<@b<package> Ada.Strings.Maps @b<is>
+   @b<pragma> Pure(Maps);>
+@dby
+@xcode<@b<package> Ada.Strings.Maps
+  @b<with> Pure @b<is>>
+
+!corrigendum A.4.6(3/2)
+
+@drepl
+@xcode<@b<package> Ada.Strings.Maps.Constants @b<is>
+   @b<pragma> Pure(Constants);>
+@dby
+@xcode<@b<package> Ada.Strings.Maps.Constants
+   @b<with> Pure @b<is>>
+
+!corrigendum A.4.7(46.2/2)
+
+@drepl
+@fa<Pragma> Pure is replaced by pragma Preelaborate in Strings.Wide_Maps.Wide_Constants.
+@dby
+Aspect Pure is replaced by aspects @fc<Preelaborate, Nonblocking,
+Global =@> @b<in out synchronized>> in Strings.Wide_Maps.Wide_Constants.
+
+!corrigendum A.4.8(50/2)
+
+@drepl
+@fa<Pragma> Pure is replaced by pragma Preelaborate in Strings.Wide_Maps.Wide_Constants.
+@dby
+Aspect Pure is replaced by aspects @fc< Preelaborate, Nonblocking,
+Global =@> @b<in out synchronized>> in Strings.Wide_Wide_Maps.Wide_Wide_Constants.
+
+!corrigendum A.4.9(2/3)
+
+@drepl
+@xcode<@b<with> Ada.Containers;
+@b<function> Ada.Strings.Hash (Key : String) @b<return> Containers.Hash_Type;
+@b<pragma> Pure(Ada.Strings.Hash);>
+@dby
+@xcode<@b<with> Ada.Containers;
+@b<function> Ada.Strings.Hash (Key : String) @b<return> Containers.Hash_Type
+   @b<with> Pure;>
+
+!corrigendum A.4.9(11.2/3)
+
+@drepl
+@xcode<@b<with> Ada.Containers;
+@b<function> Ada.Strings.Hash_Case_Insensitive (Key : String)
+   @b<return> Containers.Hash_Type;
+@b<pragma> Pure(Ada.Strings.Hash_Case_Insensitive);>
+@dby
+@xcode<@b<with> Ada.Containers;
+@b<function> Ada.Strings.Hash_Case_Insensitive (Key : String)
+   @b<return> Containers.Hash_Type
+   @b<with> Pure;>
+
+!corrigendum A.4.10(2/3)
+
+@drepl
+@xcode<@b<function> Ada.Strings.Equal_Case_Insensitive (Left, Right : String)
+   @b<return> Boolean;
+@b<pragma> Pure(Ada.Strings.Equal_Case_Insensitive);>
+@dby
+@xcode<@b<function> Ada.Strings.Equal_Case_Insensitive (Left, Right : String)
+   @b<return> Boolean @b<with> Pure;>
+
+!corrigendum A.4.10(13/3)
+
+@drepl
+@xcode<@b<function> Ada.Strings.Less_Case_Insensitive (Left, Right : String)
+   @b<return> Boolean;
+@b<pragma> Pure(Ada.Strings.Less_Case_Insensitive);>
+@dby
+@xcode<@b<function> Ada.Strings.Less_Case_Insensitive (Left, Right : String)
+   @b<return> Boolean @b<with> Pure;>
+
+!corrigendum A.4.11(3/3)
+
+@drepl
+@xcode<@b<package> Ada.Strings.UTF_Encoding @b<is>
+   @b<pragma> Pure(UTF_Encoding);>
+@dby
+@xcode<@b<package> Ada.Strings.UTF_Encoding
+   @b<with> Pure @b<is>>
+
+!corrigendum A.4.11(15/3)
+
+@drepl
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Conversions @b<is>
+   @b<pragma> Pure(Conversions);>
+@dby
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Conversions
+   @b<with> Pure @b<is>>
+
+!corrigendum A.4.11(22/3)
+
+@drepl
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Strings @b<is>
+   @b<pragma> Pure(Strings);>
+@dby
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Strings
+   @b<with> Pure @b<is>>
+
+!corrigendum A.4.11(30/3)
+
+@drepl
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Wide_Strings @b<is>
+   @b<pragma> Pure(Wide_Strings);>
+@dby
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Wide_Strings
+   @b<with> Pure @b<is>>
+
+!corrigendum A.4.11(38/3)
+
+@drepl
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Wide_Wide_Strings @b<is>
+   @b<pragma> Pure(Wide_Wide_Strings);>
+@dby
+@xcode<@b<package> Ada.Strings.UTF_Encoding.Wide_Wide_Strings
+   @b<with> Pure @b<is>>
+
+!corrigendum A.5(3/2)
+
+@drepl
+@xcode<@b<package> Ada.Numerics @b<is>
+   @b<pragma> Pure(Numerics);
+   Argument_Error : @b<exception>;
+   Pi : @b<constant> :=
+          3.14159_26535_89793_23846_26433_83279_50288_41971_69399_37511;
+   @Pi  : @b<constant> := Pi;
+   e  : @b<constant> :=
+          2.71828_18284_59045_23536_02874_71352_66249_77572_47093_69996;
+@b<end> Ada.Numerics;>
+@dby
+@xcode<@b<package> Ada.Numerics
+   @b<with> Pure @b<is>
+   Argument_Error : @b<exception>;
+   Pi : @b<constant> :=
+          3.14159_26535_89793_23846_26433_83279_50288_41971_69399_37511;
+   @Pi  : @b<constant> := Pi;
+   e  : @b<constant> :=
+          2.71828_18284_59045_23536_02874_71352_66249_77572_47093_69996;
+@b<end> Ada.Numerics;>
+
+!corrigendum A.13(3)
+
+@drepl
+@xcode<@b<package> Ada.IO_Exceptions @b<is>
+   @b<pragma> Pure(IO_Exceptions);>
+@dby
+@xcode<@b<package> Ada.IO_Exceptions
+   @b<with> Pure @b<is>>
+
+!corrigendum A.18.1(3/2)
+
+@drepl
+@xcode<@b<package> Ada.Containers @b<is>
+   @b<pragma> Pure(Containers);>
+@dby
+@xcode<@b<package> Ada.Containers
+   @b<with> Pure @b<is>>
+
+!corrigendum A.19(3/3)
+
+@drepl
+@xcode<@b<package> Ada.Locales @b<is>
+   @b<pragma> Preelaborate(Locales);
+   @b<pragma> Remote_Types(Locales);
+@dby
+@xcode<@b<package> Ada.Locales
+   @b<with> Preelaborate, Remote_Types @b<is>
+
+!corrigendum B.2(3)
+
+@drepl
+@xcode<@b<package> Interfaces @b<is>
+   @b<pragma> Pure(Interfaces);>
+@dby
+@xcode<@b<package> Interfaces
+   @b<with> Pure @b<is>>
+
+!corrigendum B.3(4)
+
+@drepl
+@xcode<@b<package> Interfaces.C @b<is>
+   @b<pragma> Pure(Interfaces.C);>
+@dby
+@xcode<@b<package> Interfaces.C
+   @b<with> Pure @b<is>>
+
+!corrigendum B.5(4)
+
+@drepl
+@xcode<@b<with> Ada.Numerics.Generic_Complex_Types;  -- @ft<@i<see G.1.1>>
+@b<pragma> Elaborate_All(Ada.Numerics.Generic_Complex_Types);
+@b<package> Interfaces.Fortran @b<is>
+   @b<pragma> Pure(Fortran);>
+@dby
+@xcode<@b<with> Ada.Numerics.Generic_Complex_Types;  -- @ft<@i<see G.1.1>>
+@b<pragma> Elaborate_All(Ada.Numerics.Generic_Complex_Types);
+@b<package> Interfaces.Fortran
+   @b<with> Pure @b<is>>
+
+!corrigendum F.2(2)
+
+@drepl
+@xcode<@b<package> Ada.Decimal @b<is>
+   @b<pragma> Pure(Decimal);>
+@dby
+@xcode<@b<package> Ada.Decimal
+   @b<with> Pure @b<is>>
 
 !ASIS
 

Questions? Ask the ACAA Technical Agent