Hi, Leland.
I don't believe that CMS Rexx does provide a default EVALBLOK when it calls an external
function. Rexx calls the function with calltype x'05' and register 1 points to the
tokenized plist and register 0 points to the 6 word extended plist (EPLIST). The last word
in the eplist is a pointer to a (possible) returned EVALBLOK. This location contains a
zero on entry; will be unchanged (still zero) if no result is returned and will contain
the address of an EVALBLOK, allocated by the called function, if a result is returned.
This is all from 8.13.1 of the Rexx/VM Reference Guide for z/VM 5.3
Leland wrote:
Let's say I have an external REXX function that needs to return more data than
there's space for in the default EVALBLOK that's provided by CMS. Allocating a
new one and storing it's addr in the EPLIST isn't a easy enough.
But, the should the original be CMSSTOR RELEASEd?
Not doing so causes memory leakage. But maybe there's a proper way of letting
REXX know that it wasn't used and should be discarded???
Thanks,
Leland
--
DJ
V/Soft
z/VM and mainframe Linux expertise, training,
consulting, and software development
www.vsoft-software.com