pTAL Guidelines for TAL Programmers
Overview
pTAL Guidelines for TAL Programmers—527256-002
1-6
Unsupported TAL Features
Finally, TAL does little integrity checking when you store an address into a pointer. You
must ensure, therefore, that the address you store into a pointer references the correct
offset in the correct data area. In TAL, you can store any value in any pointer provided
only that the length of the value is the same as the length of the pointer—16 bits or 32
bits.
Unsupported TAL Features
Not all TAL features are supported in pTAL. For some features, pTAL supplies other
means to obtain the same functionality. For example, although pTAL does not support
CODE statements, it provides alternate features for those CODE statements whose
functionality is needed and for which the functionality is otherwise unavailable.
For other features you might need to change your algorithms. For example, pTAL does
not provide an alternative for STACK or STORE statements. TAL features in this
category include:
•
CODE statements
•
STACK and STORE statements
•
G-relative, L-relative, and S-relative addresses
•
Reading or writing the stack marker
•
Reading or writing the environment (ENV) register
•
Reading or writing a variable or extensible procedure’s parameter mask and
•
parameter count
•
Arithmetic left shift operations
•
Dynamic procedure calls (CODE (DPCL))
•
Returning $CARRY or $OVERFLOW from procedures
For details, see Section 2, Coding Guidelines.
Restricted TAL Features
For some TAL features, pTAL supports only a restricted subset of the TAL functionality.
These include:
•
Testing hardware indicators (carry, overflow, condition code)
•
Returning the condition code (CCL, CCE, CCG) from procedures
•
Depending on the memory location of variables
•
Equivalencing variables
•
Using PROC formal parameters
•
Using signed and unsigned arithmetic operations
•
Using address conversions
•
Using address arithmetic
•
Using shift operators
•
Assigning addresses to pointers