pTAL Reference Manual (G06.24+, H06.09+, J06.03+)

The addressing mode and data type of the simple pointer determines the kind of address the pointer
can contain.
For information about data types and addresses, see Table 49 (page 165) and Table 50 (page 166).
Furthermore, the kind of expression you can specify for the address depends on the level at which
you declare the pointer:
At the global level, use a constant expression.
At the local or sublocal level, you can use any arithmetic expression.
Initializing Simple Pointers
You can initialize global standard pointers by using constant expressions such as:
MeaningExpression
Accesses address of variable@identifier
If @identifier is a WADDR address, ‘<<‘ converts it to a BADDR address.If
@identifier is a SGWADDR address, ‘<<‘ converts it to a SGBADDR address.
@identifier '<<' 1
If @identifier is a BADDR address, ‘>>‘ converts it to a WADDR address.If
@identifier is a SGBADDR address, ‘>>‘ converts it to a SGWADDR address.
@identifier '>>' 1
Accesses address of variable indicated by index@identifier [index ]
Any that return a constant value, such as $OFFSETBuilt-in routine
Expressions other than those in the preceding list can perform valid type conversions, but the
compiler recognizes only those in the preceding list and might diagnose others as errors.
You can apply the @ operator to these global variables:
@identifier?Variable
YesDirect array
YesStandard indirect array
NoExtended indirect array
YesDirect structure
YesStandard indirect structure
NoExtended indirect structure
NoSimple pointer
NoStructure pointer
Simple pointers receive their initial values when you compile the source code. Local or sublocal
simple pointers receive their initial values at each activation of the encompassing procedure or
subprocedure.
172 Pointers