Ref:  Your note of Wed, 10 Apr 2019 07:48:57 -0500

That definitely shouldn't happen.  Thanks for the test case;
the problem reproduces very easily, for example:
         DC    AL2(-1,1)

I've already found the cause and prototyped a one-line fix,
although it will of course need thorough review and testing
before we ship it.

To ensure proper tracking and prioritisation of this work,
it would be helpful if the problem could be reported as a
defect via the usual support channels.

The problem was trivial; a new flag used to tolerate an
incorrect negative value by expecting truncated leading bits to
be one rather than zero was not being reset between different
values within the same declaration.  The fix just requires
clearing the flag before each value, so that truncated leading
bits of a positive value will be expected to be zero as usual.

Jonathan Scott, HLASM,
IBM Hursley, UK

> This is old code, but it is generating a truncation warning.  If I change
> the AL2 to a Y constant there is no truncation warning.
>
> Regards,
> John  K
>
> 00FD92 00080013001C0022           23067=DIRBITP2 DC
> 0H'0',AL2(+08,+19,+28,+34,+40)
>
> 00FD9C FFF8000C0018FFE2           23068=DIRBITP3 DC
> 0H'0',AL2(-08,+12,+24,-30,+38)
>
> ** ASMA225W Value truncated to fit field; stored value is incomplete -
> +12
>
> ** ASMA225W Value truncated to fit field; stored value is incomplete -
> +24
>
> ** ASMA225W Value truncated to fit field; stored value is incomplete -
> +38
>

Reply via email to