Microsoft KB Archive/26797

Invalid Object Module Produced ID Number: Q26797

5.00 MS-DOS buglist5.00 fixlist5.00a

Summary:

SYMPTOMS Microsoft Macro Assembler (MASM) version 5.0 allows 65537 bytes or more of data to be declared in a segment. However, the linker will be unable to link the object module produced. The linker will generate the following error: fatal error L1103: attempt to access data outside segment bounds

STATUS Microsoft has confirmed this to be a problem in MASM version 5.0. This problem was corrected in MASM version 5.0a.

Sample Code

 * Assemble options needed: /DX1

.MODEL small

.STACK 1024

.CODE start: mov ax, 4C00h int 21h

bigseg SEGMENT alabel DB 32768 DUP (‘M’) DB 32768 DUP (‘S’) IFDEF X1 ; if X1 is defined the following DB 1 DUP (‘X’) ; data declaration should cause the ENDIF ; assembler to generate an error bigseg ENDS

END start