What does "didn't work" mean? What did the CALL expansion look like?
The code might be clearer if you just coded LA R1,=F'3' before the CALL. Your usage of MF=E is novel, and I'm hesitant to condemn it, but it's non-standard. Incidentally, why would you replace =F'1,2,3' on your second example with a hex string? sas On Tue, Mar 28, 2023 at 3:17 PM Frank Swarbrick <[email protected]> wrote: > Another typo, of course. > =X'000000010000000300000003' should be =X'000000010000000200000003' > ________________________________ > From: IBM Mainframe Discussion List <[email protected]> on behalf > of Frank Swarbrick <[email protected]> > Sent: Tuesday, March 28, 2023 12:52 PM > To: [email protected] <[email protected]> > Subject: Re: ASM call by value > > So that didn't work. But after a lot of fiddling about, here's what works > for me. I LE enabled it so it will be reentrant. > > ISCICS# CEEENTRY MAIN=NO > * SEE IF WE'RE RUNNING UNDER CICS BY CALLING @@GETCB... > CALL @@GETCB,MF=(E,=F'3') ...WITH VALUE INTEGER 3 > CEETERM RC=(15) > * > PPA CEEPPA > CEEDSA , > CEECAA , > END ISCICS# > > By using the execute format of the CALL macro, assuming all of the fields > are to be passed by value, you can place them, in order, in the execute > literal (or whatever its called that follows the 'E'). > > So, for example, if you wanted to call like the C statement "F(1,2,3)" you > could do: > CALL F,MF=(E,=X'000000010000000300000003') > Or, of course, you could refer do a DC group instead of using a literal. > > Perhaps this will help others. > > Frank > > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
