Go forward to Arrays.
Go backward to Cross-References.
Go up to Types.
Subrange Types
==============
The `r' type descriptor defines a type as a subrange of another
type. It is followed by type information for the type of which it is a
subrange, a semicolon, an integral lower bound, a semicolon, an
integral upper bound, and a semicolon. The AIX documentation does not
specify the trailing semicolon, in an effort to specify array indexes
more cleanly, but a subrange which is not an array index has always
included a trailing semicolon (see Arrays.).
Instead of an integer, either bound can be one of the following:
`A OFFSET'
The bound is passed by reference on the stack at offset OFFSET
from the argument list. See Parameters, for more information
on such offsets.
`T OFFSET'
The bound is passed by value on the stack at offset OFFSET from
the argument list.
`a REGISTER-NUMBER'
The bound is pased by reference in register number REGISTER-NUMBER.
`t REGISTER-NUMBER'
The bound is passed by value in register number REGISTER-NUMBER.
`J'
There is no bound.
Subranges are also used for builtin types; see *Note Traditional
Builtin Types::.