Use &SYSIN_DSN in a macro definition to obtain the name of
the data set from which the assembler is reading the source module.
The local system variable symbol &SYSIN_DSN is assigned a read-only
value each time a macro definition is called.
- z/OS
- If concatenated data sets are used to provide the source module, &SYSIN_DSN
has a value equal to the data set name of the data set that contains
the open code source line of the macro call statement, irrespective
of the nesting depth of the macro line containing the &SYSIN_DSN
reference.
When the assembler runs on the z/OS operating systems,
the value of the character string assigned to &SYSIN_DSN is always
the value stored in the JFCB for SYSIN.
- z/VM
- When the assembler runs on the CMS component of the z/VM operating
systems, the value of the character string assigned to &SYSIN_DSN
is determined as follows:
Table 1. Contents of &SYSIN_DSN on CMSSYSIN Allocated To: |
Contents of &SYSIN_DSN: |
---|
CMS file |
The 8-character file name, the 8-character file type, and the
2-character file mode of the file, each separated by a space |
Reader |
READER |
Terminal |
TERMINAL |
Labeled tape file |
The data set name of the tape file |
Unlabeled tape file |
TAPn, where n is
a value from 0 to 9, or A to F. |
- z/VSE
- When the assembler runs on the z/VSE operating system, the value
of the character string assigned to &SYSIN_DSN is determined as
follows:
Table 2. Contents
of &SYSIN_DSN on z/VSESYSIPT Assigned To: |
Contents of &SYSIN_DSN: |
---|
Job stream (SYSIPT) |
SYSIPT |
Disk |
The file-id |
Labeled tape file |
The file ID of the tape file |
Unlabeled tape file |
SYSIPT |
Examples:
On z/OS, &SYSIN_DSN might be assigned a value such as:
IBMAPC.ASSEMBLE.SOURCE
On CMS, &SYSIN_DSN might be assigned a value such as:
SAMPLE ASSEMBLE A1
Notes: - If the SOURCE user exit provides the data set information then
the value in &SYSIN_DSN is the value extracted from the Exit-Specific
Information block described in the section "Exit-Specific Information
Block" in the HLASM Programmer's Guide.
- The value of the type attribute of &SYSIN_DSN (T'&SYSIN_DSN)
is always U.
- The value of the count attribute of &SYSIN_DSN (K'&SYSIN_DSN)
is equal to the number of characters assigned as a value to &SYSIN_DSN.
In the previous CMS example, the count attribute of &SYSIN_DSN
is 20.
- Throughout the use of a macro definition, the value of &SYSIN_DSN
is considered a constant.