CVS difference for arm/source/07.mss

Differences between 1.70 and version 1.71
Log of other versions for file arm/source/07.mss

--- arm/source/07.mss	2005/10/25 05:47:08	1.70
+++ arm/source/07.mss	2005/10/31 17:34:14	1.71
@@ -1,10 +1,10 @@
 @Part(07, Root="ada.mss")
 
-@Comment{$Date: 2005/10/25 05:47:08 $}
+@Comment{$Date: 2005/10/31 17:34:14 $}
 @LabeledSection{Packages}
 
 @Comment{$Source: e:\\cvsroot/ARM/Source/07.mss,v $}
-@Comment{$Revision: 1.70 $}
+@Comment{$Revision: 1.71 $}
 
 @begin{Intro}
 @redundant[@ToGlossaryAlso{Term=<Package>,
@@ -2727,7 +2727,8 @@
 a @Chg{Version=[2],New=[body other than a @nt{package_body};
 the execution of a @nt{statement};
 or the evaluation of an @nt{expression} or @nt{range} that is not part
-of an enclosing @nt{expression}, @nt{range}, or @nt{simple_statement}],
+of an enclosing @nt{expression}, @nt{name}, @nt{range}, or
+@nt{simple_statement}],
 Old=[@nt{task_body}, a @nt{block_statement},
 a @nt{subprogram_body}, an @nt{entry_body}, or an @nt{accept_statement}]}.
 A master is finalized after it is
@@ -2746,6 +2747,14 @@
   @nt{declarative_part}, it can call functions and evaluate @nt{aggregate}s,
   possibly causing anonymous controlled objects to be created,
   and we don't want those objects to escape outside the rendezvous.]}
+
+  @ChgRef{Version=[2],Kind=[Revised],ARef=[AI95-00416-01]}
+  @ChgAdded{Version=[2],Text=[We have to include @nt{name}s in the contexts that
+  do not cause masters to occur so that @nt{expression}s contained in a
+  @nt{name} (that is not part of an @nt{expression} or @nt{simple_statement})
+  do not become masters. For a @nt{function_call} used as a @nt{name}, we
+  certainly do not want the parameter @nt{expression}s to be masters, as they
+  would then be finalized before the function is called.]}
 @end{Reason}
 
 @Defn2{Term=[finalization], Sec=(of a master)}

Questions? Ask the ACAA Technical Agent