yeah, you can add $OPTIONS STATIC.DIM to all the programs that you compile in 
information flavor, or $OPTIONS -STATIC.DIM to the ones in pick flavor. I would 
put the COMMON definition in an include file, along with whichever static.dim 
directive that you choose. The choice would be based on WHY they are using 
information flavor sometimes. I saw an application once where all programs 
except 1 were in pick flavor, but they used information flavor for just that 1 
because they wanted arrays to have an element 0.

With +STATIC.DIM as in pick flavor, arrays don't have an element 0, which they 
do with -STATIC.DIM. When you MATREAD an item with too many elements, the extra 
elements are appended to the last array element with +STATIC.DIM, but go into 
element 0 with -STATIC.DIM. I'm not sure what would happen if you tried to pass 
an array created in 1 flavor to a subroutine in the other.

And there's an old pick trick of redefining common. For example:
program1:
  COMMON /STATUS/ POSITIONX, POSITIONY, VELOCITY, DISTANCE
PROGRAM 2
  COMMON /STATUS/ ST(4)
  MATWRITE ST ON FP,STATUSID

this trick will not work with -STATIC.DIM.


On Jun 24, 2011, at 3:09 PM, Tony Gravagno wrote:

>> From: Ed
>> I'm guessing that you have an array dimensioned in the 
>> common? Pick flavor default to $OPTIONS STATIC.DIM, 
>> while Information flavor defaults to $OPTIONS 
>> -STATIC.DIM. With STATIC.DIM, each array A(n) takes up 
>> n slots in common, but with -STATIC.DIM, the entire 
>> array takes one slot.
> 
> 
> I think you nailed it bud.  I had no clue.
> 
> Here's the code in question:
> COMMON /NRND/ NEBULA.INITIALIZED, NEBULA.INFO(50)
> 
> So yes, it seems that Pick flavor sees 51 elements but
> Information sees 2.
> 
> Assume we add this to the Information code which Includes that
> Common statement.
> $OPTIONS STATIC.DIM
> (I don't want to suggest that the Information code get full
> $OPTIONS PICK.)
> 
> I believe that still allows the calling code to run in
> information flavor even though the called code is Pick flavor.
> Can we mix like that with impunity?
> 
> George wrote:
>> Not sure what you meant by F-point to the code....so 
>> that might make the difference.
> 
> F-point = Q-point with an F-pointer, no? :)
> 
> Thanks again.
> T
> 
> _______________________________________________
> U2-Users mailing list
> U2-Users@listserver.u2ug.org
> http://listserver.u2ug.org/mailman/listinfo/u2-users

_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to