Whilst all of these Macro solutions are interesting and would over come the
problem, this is not the solution I was asking for.
I have had the good furtune to work for many companies and have come across
this 2nd operand length problem many times.
If I were to use one of these macros to correct such a minor problem it would
be akin to using a sledge hammer to crack a nut. And would leave a maintenance
hangover for someone to maintain the macro.
What I'm asking for is for the Assembler Language to have some way to indicate
that I wish to use the length of the second operand. As I explained earlier
this would be particularly useful where a long second operand literal is being
used.
By having such a feature as part of the official Language rather than a Macro
implementation means it can be used at any site without having to install and
maintain a relatively complex Macro.
My second wish was for a way to drop a dependent non-labelled Using. I came
across the problem again yesterday, the first Using was a dependent
non-labelled one. The second Using of the same DSECT was register based. This
results in warning message ASMA303W. I know there are cumbersome ways round
this but what I am asking for is a simple solution such as;
USING WRKDSECT,CBLOCK1
....
DROP CBLOCK1
Kevin Lynch
Senior Software Developer for Implex
William Data Systems
> Date: Thu, 17 May 2012 14:07:41 -0700
> From: [email protected]
> Subject: Re: MVC with 2nd operand length
> To: [email protected]
>
> Ray Mansell provided this tidier version:
>
> >So then this simpler variation ought to work:
> >
> > Macro
> >&Lab MVC2 &Target,&Source
> >&Lab MVC &Target(0),&Source X'D200',S(&Target),S(&Source)
> > Org *-5 Back up to length field
> > DC AL1(L'&Source-1) Overlay source length (-1)
> > Org *+4 Step to next instruction
> > MEnd
>
> Thanks!
> John Ehrman