>Correct me if I'm wrong, as I'm sure you will, but isn't :
>
>FUNCTION myFunction
>LPARAMETERS lcParam1, lcParam2
>LOCAL lcThisFunctionLocalVariable
>lcThisFunctionLocalVariable = lcParam1 + lcParam2
>Return lcThisFunctionLocalVariable
>
>passing a LOCAL up the chain.
>
>>You can't return an array from a function except as a member of an object; however, if you pass something by reference to a function or method, modifying the parameter within the function or method results in changing the referenced item. You also cannot use the @ within a return, and can't pass something created as LOCAL or PRIVATE up the chain; only PUBLICs can be seen above the level at whichthey are created.
You're passing back the value, not the variable itself; see my reply to Joseph Kempel for a more complete statement of exactly what I was trying to assert.