A based structure or union can be declared to contain adjustable area sizes, array bounds, and string-length specifications, by using the REFER option. See REFER option (self-defining data).
If you do not specify the REFER option, the extent specifications in the BASED declarations must be restricted expressions with the following exceptions:
All of the following declarations are valid:
Example 1:
dcl
1 a1(n) based,
2 b,
3 b1 fixed bin(31),
3 b2 fixed bin(31);
Example 2:
dcl
1 a2 based,
2 b(n),
3 b1 fixed bin(31),
3 b2 fixed bin(31);
Example 3:
dcl
1 a3 based,
2 b,
3 b1 fixed bin(31),
3 b2(n) fixed bin(31);
Example 4:
dcl
1 a4 based,
2 b,
3 b1 fixed bin(31),
3 b2 char(n);
Example 5:
dcl
1 a5 based,
2 b,
3 b1 fixed bin(31),
3 b2(n) char(m);