Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Macro invocation with continuation lines results in alternate lines being discarded. #27

Open
srorso opened this issue Sep 24, 2022 · 1 comment
Assignees
Labels

Comments

@srorso
Copy link

srorso commented Sep 24, 2022

If a macro is invoked with keyword parameters, one per line, with a continuation character on each line, the even numbered lines are dropped, e.g., second, fourth. etc. This operand skipping does not occur when positional operands are used.

So:

LABEL   MACINV KEY1=YES,KEY2=NO,    \
              KEY3=MAYBE,           \
              KEY4=DEFINITELY

KEY3=MAYBE will not be processed at all. Changing the snippet to:

LABEL   MACINV KEY1=YES,KEY2=NO,    \
              KEY3=MAYBE,           \
              KEY3=MAYBE,           \
              KEY4=DEFINITELY

causes KEY4 to be dropped, and the duplication of KEY3 is not reported.

I have attached a .zip containing a sample program and listing with two macro definitions and two invocations of each macro. The first macro uses keyword operands, and the second uses positional. The first invocation illustrates the issue and the second illustrates the work-around of duplicating all lines after the first. The macro just issues MNOTE instructions to echo the keyword operands provided.

ztest-999.zip

@s390guy s390guy added the bug label Oct 15, 2022
@s390guy s390guy self-assigned this Oct 15, 2022
@Fish-Git
Copy link

Fish-Git commented Jul 5, 2024

FWIW, I personally do not use such non-standard(?) continuation lines. I always use the standard assembler non-blank column 72 continuation style:

LABEL   MACINV KEY1=YES,KEY2=NO,                                       x
              KEY3=MAYBE,                                              x
              KEY4=DEFINITELY

which seems to work reliably.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants