<div dir="ltr"><div><div><div>Hi,<br><br></div>I am working with APS user Hemant Sharma (in CC) on one of his projects. Hemant wrote a Swift script which has about three foreach invocations which he wants to run one after other.<br>
<br></div>In order to achieve this coordination, Hemant is using an int[] in one loop which is passed as input to the app call of another loop. He observes that the coordination is not maintained and both app calls happen simultaneously resulting in application error. <br>
<br></div>Here is a quick reproduction I tried and I observe indeed that coordination is not happening:<br><br>$ cat dummy.swift<br>type file;<br><br>app (file out) A (string in1){<br>  dummyA in1 stdout=@out;<br>}<br><br>
app (file out) B (string in1, int[] _art){<br>  dummyB in1 stdout=@out;<br>}<br><br>file outfileA[]<simple_mapper; location="outdir", prefix="a.",suffix=".out">;<br>file outfileB[]<simple_mapper; location="outdir", prefix="b.",suffix=".out">;<br>
<br>int art[];<br>foreach i in [0:3]{<br> outfileA[i] = A ("astring");<br> art[i]=i;<br> }<br><br>foreach j in [0:3]{<br> outfileB[j] = B ("bstring", art);<br> }<br clear="all"><div><div><div><div><br>
</div><div>Since the art array is wholly required in app B, one would expect the first foreach to finish befor the call to B gets invoked. This is not happening in my simple test where I ask the executable called by A to sleep for 5 sec and that called by B to print timestamp and quit.<br>
<br></div><div>I see in the resulting files that the timestamps in B precede those in A.<br><br></div><div>This looks like a bug to me. Swift is 0.94 swift-r7091 cog-r3789.<br></div><div><br></div><div>Thanks,<br></div><div>
-- <br><font face="'courier new', monospace">Ketan</font><br><br>
</div></div></div></div></div>