TAL Reference Manual
Error Messages
Appendix A—526371.001
A-8
14
14
A global initialization expression includes variables. Initialize global data only with
constant expressions, which can include
@identifier when used with standard functions
that return a constant value. @ accesses the address of
identifier, which must be a
nonpointer variable with a 16-bit address. For example:
STRUCT .st[0:1];
BEGIN
INT a;
INT b;
INT c;
END;
INT .p1 := @st.b; -- error 14
INT .p2 := @st '+' $OFFSET (st.b) / 2; -- works fine
INT .q1 := @st[1].c; -- error 14
INT .q2 := @st '+' $LEN (st) / 2
'+' $OFFSET (st.c) / 2; -- works fine
15
An equivalenced variable declaration tries to initialize the previously declared variable.
Initialize the previous variable before referring to it in the equivalenced variable
declaration. For example:
INT b;
INT .a = b := 5; !Cannot initialize B here; error 15
INT b := 5; !Can initialize B here
INT .a = b; !No error
16
The swap volume cannot accommodate your program. For example, either of the
following values are too large for the memory available on the swap volume:
Only initialization with constant value(s) is allowed
Initialization is illegal with reference specification
Insufficient disk space on swap volume