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.

Data Attributes<br />

The value of an attribute for a variable symbol specified in an attribute reference<br />

comes from the value substituted for the variable symbol as follows:<br />

SET Symbols and System Variable Symbols: For SET symbols and all system<br />

variable symbols other than &SYSLIST, the attribute values come from the current<br />

value of these symbols.<br />

Symbolic Parameters and &SYSLIST: For symbolic parameters and the system<br />

variable symbol, &SYSLIST, the values of the count and number attributes come<br />

from the operands of macro instructions. The name field entry of the call is an<br />

“operand,” and is referenceable as &SYSLIST(0). The values of the type, length,<br />

scale, and integer attributes, however, come from the values represented by the<br />

macro instruction operands, as follows:<br />

1. If the operand is a sublist, the entire sublist and each entry of the sublist can<br />

possess attributes; all the individual entries and the whole sublist have the<br />

same attributes as those of the first suboperand in the sublist (except for the<br />

count attribute, which can be different, and the number attribute which is<br />

relevant only for the whole sublist).<br />

2. If the first character or characters of the operand (or sublist entry) constitute an<br />

ordinary symbol, and this symbol is followed by either an arithmetic operator (+,<br />

−, *, or /), a left parenthesis, a comma, or a space, then the value of the<br />

attributes for the operand are the same as for the ordinary symbol.<br />

3. If the operand (or sublist entry) is a character string other than a sublist or the<br />

character string described in the previous point, the type attribute is undefined<br />

(U) and the length, scale, and integer attributes are invalid.<br />

Because the count (K'), number (N'), and defined (D') attribute references are<br />

allowed only in conditional assembly instructions, their values are available only<br />

during conditional assembly processing. They are not available at ordinary<br />

assembly time.<br />

The system variable symbol &SYSLIST, with a valid subscript, can be used in an<br />

attribute reference to refer to a macro instruction operand, and, in turn, to an<br />

ordinary symbol. Thus, any of the attribute values for macro instruction operands<br />

and ordinary symbols listed below can also be substituted for an attribute reference<br />

containing &SYSLIST (see “&SYSLIST System Variable Symbol” on page 276).<br />

Type Attribute (T')<br />

The type attribute has a value of a single alphabetic character that shows the type<br />

of data represented by:<br />

An ordinary symbol<br />

A macro instruction operand<br />

A SET symbol<br />

A literal<br />

A system variable symbol<br />

The type attribute can change during an assembly. The lookahead search might<br />

assign one attribute, whereas the symbol table at the end of the assembly might<br />

display another.<br />

328 <strong>HLASM</strong> V1R5 <strong>Language</strong> <strong>Reference</strong>

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

Saved successfully!

Ooh no, something went wrong!