CVS difference for 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
- AARM Ramification: The effect is as-if a return statement is immediately
* 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
+ 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