[Info-vax] /END=label
Marc Van Dyck
marc.gr.vandyck at invalid.skynet.be
Mon Aug 27 08:18:55 EDT 2018
abrsvc used his keyboard to write :
>> The best you have it write a program that uses LIB$GET_SYMBOL,
>> LIB$SET_SYMBOL, and/or return something via $STATUS and then have the DCL
>> query the symbol and branch as desired. A program cannot control DCL's
>> command processing flow from inside the program.
>
> I would agree with the above, but the OP indicated setting up a DCL command
> and I am assuming using the command tables. So the question becomes:
>
> Can a user mimic the behavior by properly setting up the command tables
> rather than just using a DCL symbol?
For the moment, I just set exit with ss$_endoffile in $status. I can
then test that in the next line and branch if needed. But I find the
/END=label method much more elegant...
My program is indeed activated by a command in DCLTABLES.
However, I looked at the contents of DCLTABLES and found that the DCL
command READ does not activate an image (there is no "image" keyword in
the command definition) but a DCL internal routine (there is a
"cliroutine" keyword in the command definition). So I suspect that the
branching to a label is using a technique that is not available when
an image external to DCL is activated. I'd like to have a confirmation
of that (more detailed technical explication would however not harm)
before researching further...
--
Marc Van Dyck
More information about the Info-vax
mailing list