Data Definition Language (DDL) Reference Manual
DDL Compiler Commands
Data Definition Language (DDL) Reference Manual—529431-004
9-60
FILLER
The DDL compiler removes only filler bytes generated by the DDL compiler; it never 
removes user-specified filler bytes.
When the CFIELDALIGN_MATCHED2 command is set, the DDL compiler uses a 
modified, extended FILLER 1. In this case, the DDL compiler ignores any FILLER 0 
specification.
If FILLER 0 is specified, the DDL compiler generates filler bytes according to this 
algorithm:
•
If a field or group described with a REDEFINES clause does not start on a word 
boundary, the DDL compiler inserts 1 byte of filler before the field or group being 
redefined, even if the redefined field is the first element in a group.
•
If a single-item field or a group not described with a REDEFINES clause does not 
start on a word boundary, the DDL compiler inserts one byte of filler before the 
field or group.
•
If the first element in a group not described with a REDEFINES clause does not 
start on a word boundary, the DDL compiler inserts one byte of filler before the 
group.
•
If a group described with an OCCURS clause has both an odd number of bytes 
and an element that does not start on a word boundary, the DDL compiler inserts 1 
byte of filler after the last element in the group. The filler bytes have the same level 
number as the first element in the group. (The DDL compiler can remove this byte 
of filler in a subsequent compilation phase.)
•
If the first element of a group not described with a REDEFINES clause is a byte of 
filler generated by the DDL compiler and the group does not start on a word 
boundary, the DDL compiler inserts another filler byte before the group. In a 
subsequent compilation phase, the DDL compiler removes the filler byte from 
within the group.
FILLER 1 works exactly like FILLER 0 except that FILLER 1 has an additional rule that 
keeps user-defined TYPE definitions intact wherever they are used. The rest of the 
algorithm for FILLER 1 is this:
•
For a group defined by a TYPE clause, the DDL compiler determines whether the 
group the clause refers to starts on a word boundary.
•
If the group referenced starts on a word boundary, the DDL compiler does not 
insert any filler bytes for the referring group.
•
If the group referenced does not start on a word boundary and is not described 
with a REDEFINES clause, the DDL compiler inserts a filler byte before the 
referring group.
•
If the group referenced does not start on a word boundary but is described with a 
REDEFINES clause, the DDL compiler inserts a filler byte before the group being 
redefined.










