pTAL Guidelines for TAL Programmers
Contents
pTAL Guidelines for TAL Programmers—527256-002
ii
2. Coding Guidelines (continued)
2. Coding Guidelines (continued)
Pointers and Addresses (continued)
Address Variables 2-14
Addresses and Integer Expressions 2-15
Address Conversions 2-15
Address Arithmetic 2-16
Incrementing and Decrementing Pointers 2-17
Comparing Addresses to Addresses 2-19
Comparing Addresses to Constants 2-19
Addresses Are Indivisible 2-20
Addresses Are Absolute 2-20
Equivalenced Variables and Indirect Pointers 2-23
Procedures, Subprocedures, and Labels 2-24
@ Operator With Procedure Names 2-25
@ Operator With Labels and Subprocedure Names 2-25
Stack Marker Accesses Using Based-Address Equivalenced Declarations,
Indexing, and Pointers 2-26
Parameter Accesses Using Based-Address Equivalenced Declarations, Indexing,
and Pointers 2-27
Overflow Bit in ENV in Stack Marker 2-27
Carry Bit in ENV in Stack Marker 2-28
P Register in Stack Marker 2-28
Extensible and Variable Procedures: Dynamic Calls 2-29
Reading and Altering Parameter Masks 2-29
$OPTIONAL Routine 2-30
Building Parameter Masks 2-31
Returning a Value From a Function 2-32
RETURN Statement Must Appear in Every Function
2-32
Returning From a Function That Does Not Specify a RETURN Statement
2-32
Dynamic Procedure Calls 2-33
Parameters 2-35
Formal Value Parameters of Data Type STRING 2-36
Using STACK Statements to Pass Parameters 2-37
Parameters Are Not Consecutive 2-37
Parameters and Local Variables
2-38
Parameters and Structure Layouts
2-39
@ Operator With PROC, PROCPTR, and PROCADDR Formal Parameters 2-39