ID Number: Q75280
6.00 | 6.00
MS-DOS | OS/2
buglist6.00 fixlist6.00a
Summary:
PROBLEM ID: MSM9108005
SYMPTOMS
If an ALIGN or EVEN directive is used in a module after data has been
defined with the DUP operator in the Microsoft Macro Assembler (MASM)
version 6.0, the alignment value will be adjusted by one for each DUP
that precedes it. The example code below illustrates this.
RESOLUTION
Currently, the only workarounds in this case are to either avoid using
ALIGN (or EVEN) and manually pad the segment by the required amount or
to not use the DUP operator in the same segment that will use the
ALIGN (or EVEN) directive.
STATUS
Microsoft has confirmed this to be a problem in MASM version 6.0.
This problem was corrected in MASM version 6.0a.
More Information:
Sample Code
-----------
; Assemble options needed: /Fl /Sa
example segment para public 'data'
db 2 dup (0)
db 3 dup (0)
align 8
dw 0 ; starts at offset 6 instead of 8
example ends
end
Additional reference words: 6.00