22.02.2015 Views

HLASM Language Reference

HLASM Language Reference

HLASM Language Reference

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

&SYSIN_DSN System Variable Symbol<br />

Statement 8 is the last program sectioning statement processed before<br />

statement 9 is processed. Therefore, &SYSECT is assigned the value<br />

MAINPROG for macro instruction OUTER1 in statement 9. MAINPROG is substituted<br />

for &SYSECT when it appears in statement 6.<br />

Statement 3 is the program sectioning statement processed before statement 4<br />

is processed. Therefore, &SYSECT is assigned the value CSOUT1 for macro<br />

instruction INNER in statement 4. CSOUT1 is substituted for &SYSECT when it<br />

appears in statement 2.<br />

Statement 1 is used to generate a CSECT statement for statement 4. This is<br />

the last program sectioning statement that appears before statement 5.<br />

Therefore, &SYSECT is assigned the value INA for macro instruction INNER in<br />

statement 5. INA is substituted for &SYSECT when it appears in statement 2.<br />

Statement 1 is used to generate a CSECT statement for statement 5. This is<br />

the last program sectioning statement that appears before statement 10.<br />

Therefore, &SYSECT is assigned the value INB for macro instruction OUTER2 in<br />

statement 10. INB is substituted for &SYSECT when it appears in statement 7.<br />

&SYSIN_DSN System Variable Symbol<br />

Use &SYSIN_DSN in a macro definition to obtain the name of the data set from<br />

which the assembler is reading the source module.<br />

The local system variable symbol &SYSIN_DSN is assigned a read-only value each<br />

time a macro definition is called.<br />

If concatenated data sets are used to provide the source module,<br />

&SYSIN_DSN has a value equal to the data set name of the data set that contains<br />

the open code source line of the macro call statement, irrespective of the nesting<br />

depth of the macro line containing the &SYSIN_DSN reference.<br />

When the assembler runs on the MVS operating systems, the value of the<br />

character string assigned to &SYSIN_DSN is always the value stored in the JFCB<br />

for SYSIN.<br />

When the assembler runs on the CMS component of the VM operating<br />

systems, the value of the character string assigned to &SYSIN_DSN is determined<br />

as follows:<br />

Figure 67. Contents of &SYSIN_DSN on CMS<br />

SYSIN Allocated To:<br />

CMS file<br />

Reader<br />

Terminal<br />

Labeled tape file<br />

Contents of &SYSIN_DSN:<br />

The 8-character filename, the<br />

8-character filetype, and the<br />

2-character filemode of the file, each<br />

separated by a space<br />

READER<br />

TERMINAL<br />

The data set name of the tape file<br />

Unlabeled tape file TAPn, where n is a value from 0 to 9,<br />

or A to F.<br />

Chapter 7. How to Specify Macro Definitions 269

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!