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

Differences between 1.4 and version 1.5
Log of other versions for file ai12s/ai12-0373-1.txt

--- ai12s/ai12-0373-1.txt	2020/03/31 22:23:08	1.4
+++ ai12s/ai12-0373-1.txt	2020/04/01 00:44:01	1.5
@@ -1,4 +1,7 @@
-!standard 3.1(1)                                     20-03-26  AI12-0373-1/02
+!standard 3.1(1)                                     20-03-31  AI12-0373-1/03
+!standard 4.2.1(3/5)
+!standard 4.2.1(4/5)
+!standard 4.2.1(5/5)
 !standard 4.9(17.3/5)
 !standard 13.1.1(4/3)
 !standard 13.1.1(11/3)
@@ -24,6 +27,8 @@
 
 (3) Not all entities are (directly) associated with a declaration.
 
+(4) User-defined literal functions can only have a single "in" parameter.
+
 !problem
 
 (1) The definition of statically names excludes any discriminant-dependent
@@ -42,6 +47,12 @@
 seems to imply that an array component is not an entity. That would make
 some things that are objects not entities.
 
+(4) 4.2.1(3/5) says that the only parameter of a user-defined Integer_Literal
+function is of type String. But it doesn't specify a mode. Since the parameter
+is passed a string literal, a call to a function with a mode other than "in" 
+would be illegal. Thus, defining the function with an "in out" parameter would
+be useless.
+
 !proposal
 
 (See Summary.)
@@ -64,6 +75,19 @@
    We don't mention those here as this paragraph is about *named* 
    entities.
 
+Modify 4.2.1(3/5):
+   This aspect is specified by a function_name that statically denotes a 
+   function with one {in} parameter of type String and a result type of T.
+
+Modify 4.2.1(4/5):
+   This aspect is specified by a function_name that statically denotes a 
+   function with one {in} parameter of type String and a result type of T.
+
+Modify 4.2.1(5/5):
+   This aspect is specified by a function_name that statically denotes a 
+   function with one {in} parameter of type Wide_Wide_String and a result 
+   type of T.
+
 Modify 4.9(17.3/5):
 
   * is a selected_component whose prefix statically names an object, there is 
@@ -137,6 +161,12 @@
 entity simply because it doesn't have a declaration with a name. So we improve
 the wording to make it clear there are other kinds of entities.
 
+(4) The equivalence of 4.2.1(7/5) ensures that no illegal call will be made.
+However, there is no reason to allow the definition of useless things, that
+almost certainly would be a bug, not something intended. So we enhance the
+requirements to require an "in" parameter.
+
+
 !corrigendum 3.1(1)
 
 @drepl
@@ -153,6 +183,11 @@
 allocated dynamically. Such entities can be denoted using 
 @fa<indexed_component>, @fa<selected_component>, or dereference @fa<name>s
 (see 4.1).
+
+!corrigendum 4.2.1(0)
+
+@dinsc
+The corrected text is found in the conflict file.
 
 !corrigendum 4.9(17)
 

Questions? Ask the ACAA Technical Agent