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

AINSERT statement not shown on listing and ampersand issue #546

Open
abekornelis opened this issue Aug 5, 2024 · 1 comment
Open

AINSERT statement not shown on listing and ampersand issue #546

abekornelis opened this issue Aug 5, 2024 · 1 comment
Labels
bug Something isn't working component-core Related to core components (java) Lang:Java

Comments

@abekornelis
Copy link
Collaborator

z390 has two issues with AINSERT processing:

  1. for each AINSERT statement, HLASM shows the AINSERT statement as a generated statement (preceded by + sign) on the listing, but z390 processes the AINSERT without reporting. Current PRINT settings might need to be taken in to account.
  2. When performing an AINSERT, the specified text argument has its content analyzed and any variables are substituted. Double ampersands and double apostrophes are deduplicated. However, when they occur within a substituted variable, they are not deduplicated. Please change logic to first substitute variables, then deduplicate ' and & characters
@abekornelis
Copy link
Collaborator Author

abekornelis commented Aug 5, 2024

Here's from a TRACE(M) listing:

AINSERT PUSH=    GBLC &TSTSVAR                                                               
Z4THPCHK    103                  AINSERT '    GBLC &KEY      ',BACK
AINSERT PUSH=    GBLC &&z4thParm_CELLSIZE                                                    
<other code>
AINSERT POP =    GBLC &TSTSVAR
OPEN CODE     0             GBLC &TSTSVAR
AINSERT POP =    GBLC &&z4thParm_CELLSIZE
OPEN CODE     0             GBLC &&z4thParm_CELLSIZE
OPEN CODE     0         0 * MZ390E error  37         (1/0)0 invalid expression variable - &&

As you can see the literal &&TSTVAR gets deduplicated and processed corretly, but the &KEY gets replaced by its value without having its ampersands deduplicated.
Please adjust AINSERT behaviour to be better compatible with HLASM

@abekornelis abekornelis added bug Something isn't working component-core Related to core components (java) Lang:Java labels Aug 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working component-core Related to core components (java) Lang:Java
Projects
None yet
Development

No branches or pull requests

1 participant