Re: EVALBLOK and RELEASEing it

2008-12-11 Thread Dave Jones

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


EVALBLOK and RELEASEing it

2008-12-09 Thread Leland
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


Re: EVALBLOK and RELEASEing it

2008-12-09 Thread Leland
  EPLIST isn't a easy enough.
   EPLIST IS easy enough.

:-(

Leland