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

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

--- ai12s/ai12-0841-1.txt	2018/03/31 03:21:05	1.1
+++ ai12s/ai12-0841-1.txt	2018/03/31 03:36:02	1.2
@@ -60,18 +60,15 @@
 *singularity* is created. For aspects Post and Type_Invariant (including the
 class-wide versions thereof) associated with a subprogram call, the
 singularity is created in the subprogram with which the check is associated.
-Otherwise, the singlarity is created in the entity that executed the check.
+Otherwise, the singularity is created in the entity that executed the check.
 
   AARM Ramification: For instance, for a precondition, the singularity is
   created in the subprogram or other entity that executed the call.
 
 When a singularity is created in an entity:
     * if the entity is a procedure, then the procedure is immediately 
-      completed;
+      returns;
 
-  AARM Ramification: The effect is as-if a return statement is immediately
-  executed.
-
     * if the entity is a function, then the function immediately returns
       a default-initialized object of the return type (returning a null
       array for indefinite array types and using the 'First value for
@@ -84,15 +81,20 @@
     * for other entities, elaboration of the entity is abandoned and
       Program_Error is raised.
 
-In all of these case, the entity in which the singularity was created is
+In all of these cases, the entity in which the singularity was created is
 called a "singular entity".
 
 A call on a singular procedure has the effect of a null procedure.
 
   AARM Ramification: Effects that logically belong to the caller are still
   evaluated. For instance, parameters are evaluated and preconditions checked.
+
+  However, postconditions don't need to be evaluated for a singular
+  subprogram, as the only effect would be to make the subprogram singular
+  again.
+  End AARM Ramification.
 
-A call on a singular procedure has the effect of an expression function
+A call on a singular function has the effect of an expression function
 that returns a default-initialized object of the return type (similarly
 to the first creation of the singularity for indefinite types).
 
@@ -113,7 +115,7 @@
 
 We called the policy Blackhole as nothing inside of the blackhole (the
 "singularity") can have any external effect on the Ada program. We considered
-a variety of other terms, incluing Tar_Pit, Dumpster, and Congress, but none
+a variety of other terms, including Tar_Pit, Dumpster, and Congress, but none
 of these were judged to have quite the right connotation. Additionally,
 "blackhole" made the choices for the other terminology needed obvious.
 

Questions? Ask the ACAA Technical Agent