CVS difference for ai05s/ai05-0246-1.txt
--- ai05s/ai05-0246-1.txt 2011/06/09 04:24:58 1.6
+++ ai05s/ai05-0246-1.txt 2011/06/10 00:42:48 1.7
@@ -1,4 +1,4 @@
-!standard 13.12(1) 11-06-08 AI05-0246-1/04
+!standard 13.12(1) 11-06-09 AI05-0246-1/05
!standard 13.12(9.2/1)
!standard 13.12.1(2/2)
!standard 13.12.1(8/2)
@@ -100,7 +100,12 @@
identifiers:
- package System (see 13.7);
- package Standard (see A.1);
- - package Ada.Command_Line (see A.15).
+ - package Ada.Command_Line (see A.15);
+ - package Interfaces.C (see B.3);
+ - package Interfaces.C.Strings (see B.3.1);
+ - package Interfaces.C.Pointers (see B.3.2);
+ - package Interfaces.COBOL (see B.4);
+ - package Interfaces.Fortran (see B.5).
* The following language-defined packages contain only implementation-defined
identifiers:
@@ -236,7 +241,12 @@
identifiers:>
@xinbull<package System (see 13.7);>
@xinbull<package Standard (see A.1);>
-@xinbull<package Ada.Command_Line (see A.15).>
+@xinbull<package Ada.Command_Line (see A.15);>
+@xinbull<package Interfaces.C (see B.3);>
+@xinbull<package Interfaces.C.Strings (see B.3.1);>
+@xinbull<package Interfaces.C.Pointers (see B.3.2);>
+@xinbull<package Interfaces.COBOL (see B.4);>
+@xinbull<package Interfaces.Fortran (see B.5).>
@xbullet<The following language-defined packages contain only implementation-defined
identifiers:>
@@ -585,3 +595,56 @@
****************************************************************
+From: Randy Brukardt
+Sent: Thursday, June 9, 2011 7:37 PM
+
+AI05-0246-1 says in part:
+
+ No_Implementation_Identifiers
+
+ There are no usage names that denote declarations with
+ implementation-defined identifiers that occur within
+ language-defined packages. [Redundant: Such identifiers
+ can arise as follows:
+
+ * The following language-defined packages allow implementation-defined
+ identifiers:
+ - package System (see 13.7);
+ - package Standard (see A.1);
+ - package Ada.Command_Line (see A.15).
+
+ * The following language-defined packages contain only implementation-defined
+ identifiers:
+ - package System.Machine_Code (see 13.8);
+ - package Ada.Directories.Information (see A.16);
+ - nested Implementation packages of the Queue containers (see A.18.28-31);
+ - package Interfaces (B.2);
+ - package Ada.Interrupts.Names (see C.3.2).
+
+
+I was reading Interfaces.Fortran for unrelated reasons, and noticed B.5(21):
+"An implementation may add additional declarations to the Fortran interface
+packages. ..."
+
+I'm not sure why this is plural (there is only one Interfaces.Fortran package), but
+in any case it sounds like this is a "language-defined package that allows
+implementation-defined identifiers".
+
+Similarly for Interfaces.C (permission B.3(62), which also seems to apply to
+Interfaces.C.Strings and Interfaces.C.Pointers), and the more specific permissions
+B.4(92-93), which apply to Interfaces.COBOL.
+
+Since we are already mentioning Interfaces, it seems we need to mention these other
+packages as well. So I propose that we add:
+
+ - package Interfaces.C (see B.3);
+ - package Interfaces.C.Strings (see B.3.1);
+ - package Interfaces.C.Pointers (see B.3.2);
+ - package Interfaces.COBOL (see B.4);
+ - package Interfaces.Fortran (see B.5).
+
+at the end of the existing list.
+
+I'll modify AI-0246-1 this way unless someone objects.
+
+****************************************************************
Questions? Ask the ACAA Technical Agent