Open abekornelis opened 3 months ago
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
z390 has two issues with AINSERT processing: