Peter -
It would be helpful to see the storage layout of the areas involved
and the specific CALL and MOVE statements.
I think you have the intrinsic figured out. I suspect the actual
implementation you're looking at is causing some confusion. Remember
that call by reference parameters simply provide addresses to the
called routine, so if the output is PIC X(8), it simply provides the
address of a 64-bit storage address. My guess is that either the
source or destination on the MOVE field is redefined as PIC S9(8)
COMP.
You might consider writing a small test program (or I can send you
one) so you can fool around with the parameters to understand how it
works.
Glenn Mitchell
3GM Associates, Inc
Portland, ME
* To join/leave the list, search archives, change list settings, *
* etc., please visit http://raven.utc.edu/archives/hp3000-l.html *