pTAL Reference Manual (G06.24+, H06.09+, J06.03+)
Table 57 Formal Parameter Specification
Formal Parameter Characteristics
ReferralIndirection SymbolParameter TypeDeclare Formal
Parameter As:
Expected Actual
Parameter
NoValue, no; reference,
yes
A value or reference
parameter
Simple variable STRING*
INT
INT(32)
REAL
REAL(64)
FIXED(n)
FIXED(*)
NoNoUNSIGNEDA value parameterSimple variable
NoYesA reference parameterArray or simple
pointer
STRING
INT
INT(32)
REAL
REAL(64)
FIXED(n)
YesYesINT or STRINGA reference parameterDefinition structure,
referral structure, or
structure pointer
YesYesSTRUCTA reference parameterReferral structure or
structure pointer
NoNoA value parameterConstant expression**
(including
@identifier )
INT
INT(32)
UNSIGNED
REAL
REAL(64)
FIXED(n)
NoNoA value parameterProcedure PROC
PROC(32)
* You cannot declare a STRING value parameter. The compiler reports a syntax error if you declare a STRING value
parameter.
** The data type of the expression and of the formal parameter must match, except that you can mix the STRING,
INT, and UNSIGNED (1-16) data types, and you can mix the INT(32) and UNSIGNED(17-31) data types.
Any of the 13 address types can be used as formal parameters.
In Example 202 (page 255), the compiler treats var1 as if it were a simple variable and treats
var2 as if it were a simple pointer.
254 Procedures, Subprocedures, and Procedure Pointers