> Tails are literals
No; tails are symbols, and are substituted.
> value(isstepinit.userid.) = 0.
There are several issues with that. Safer is
old = value(isstepinit'.'userid'.', 0)
--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
________________________________________
From: IBM Mainframe Discussion List <[email protected]> on behalf of Tom
Conley <[email protected]>
Sent: Friday, January 29, 2021 10:13 AM
To: [email protected]
Subject: Re: Rexx stem variable question
On 1/28/2021 11:58 PM, Charles Mills wrote:
> I either have a misunderstanding of how stem variables work - or perhaps it
> is just some stupid program bug.
>
> I know this basic drill on stem variables: I can say foo. = "bar" and then
> the value of foo.anything is effectively "bar".
>
> Does that also work at the next level of stem variables?
>
> Consider the following:
>
> Userid = "FTPD"
> IsStepInit.Userid. = "0"
>
> Is IsStepInit.Userid.anything defined? I say
>
> StepName = "STEP1"
> If \ IsStepInit.Userid.Stepname Then ...
>
> And I get a "Logical value not 0 or 1" error on the If.
>
Charles,
Tails are literals and not substituted unless you're using the VALUE
function. Try value(isstepinit.userid.) = 0.
Regards,
Tom Conley
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN