Support for zero-length strings was added in HLASM 1.3 in around
1998, but it was common for a long time after that to include a
trailing space on an initial value just in case that release had
not yet been installed.

On Mon, Apr 20, 2020 at 8:45 PM -0500, "Paul Gilmartin" wrote:
> Hmmm.  HLASM prints the PTF level on the SYSPRINT title
> page.  Is that available for a feature test at assembly
> time?  But that shows only the most recent PTF, not if
> a particular earlier PTF has been applied.

Since HLASM APAR PH06374 in December 2018 there is now an
assembly-time variable &SYS_HLASM_DATE which contains the PTF
build date, which can be used to determine whether a fix is
present from that date onwards, by comparing the date with the
corresponding APAR dates in the INFO report.  (The INFO report
is in a module which is included in every fix, so every HLASM
PTF prereqs the previous one in sequence).

To avoid errors when referencing any new symbol on older levels
of HLASM, it is possible to define a created SET symbol of the
same name, which will be referenced if the system symbol is
not defined, for example as follows:

&(SYS_HLASM_DATE) SETC '00000000' Default low value
         AIF   ('&SYS_HLASM_DATE' LT '20181231').OLD

This method is also valid for all previous releases of HLASM
and has been documented.

(I would not have personally included the specific assembler
name "HLASM" as part of the name of a system variable for the
general assembler language, but a previous developer created
&SYS_HLASM_PTF and we felt it was most consistent to use the
same scheme for the PTF date).

Jonathan Scott, HLASM
IBM Hursley, UK

Reply via email to