Microsoft KB Archive/11534

From BetaArchive Wiki

No Error Message Generated on MOV ID Number: Q11534

4.00 MS-DOS buglist4.00 fixlist5.00

Problem:

The following program assembles with no error messages, although the second form of the MOV instruction is incorrect and will not assemble with the segment override (this can be checked with SYMDEB):

other   segment
other   ends

test    segment
        org  100h
        ASSUME  CS:test, es:other

START:
        mov   ax, other
        mov   es, ax

        MOV   ES:[bx], al     ; This codes the segment override,

        MOV   [ES:bx], al     ; this does not. No error reported.

test    ends
        end   start

Response:

The correct syntax should be used at all times (the segment override is coded outside the brackets).

Microsoft has confirmed this to be a problem in Version 4.00. This problem was corrected in MASM Version 5.00.