ID Number: Q59567
5.00 5.10 5.10a | 5.00 5.10 5.10a
MS-DOS | OS/2
buglist5.10
Summary:
The /P option tells MASM to generate warning messages if data is
stored in the code segment when privileged instructions are in use.
Writing data to the code segment is acceptable in real mode; however,
it may cause problems in protected mode. If MASM is invoked with the
/P option and finds an impure memory reference, such as in the
following code
.code
c_word DW ?
.
.
mov cs:c_word,data
it will generate a warning similar to the following:
filename.asm(???): warning A4100: Impure memory reference
MASM may incorrectly generate the warning message. The following
example demonstrates this problem:
.model small
.286p
.code
mov al,cs:[bp]
mul word ptr cs:[bp+2]
end
MASM incorrectly flags the line that does the multiplication. MASM
also incorrectly generates the A4100 warning message if the .286,
.386, and .386p directives are in effect.
Microsoft has confirmed this to be a problem in Version 5.10. We are
researching this problem and will post new information here as it
becomes available.