The information in this article applies to:
SYMPTOMSSubtracting two external variables in the Microsoft Macro Assembler (MASM) version 6.0 results in an incorrect value, and the assembler does not generate any errors. It should produce an error similar to the one received in MASM 5.1, such as:
CAUSEWhen subtracting two local variables, the assembler will correctly calculate the difference in their offsets. However, with external variables, it does not know the offset at assemble time, so it cannot correctly determine their difference. RESOLUTIONThe difference in offsets for external variables can be calculated by moving the values into registers or temporary variables and then performing the calculation. The sample code below illustrates this problem. STATUSMicrosoft has confirmed this to be a problem in MASM version 6.0. This problem was corrected in MASM version 6.0a. MORE INFORMATIONSample Code 1
Sample Code 2
Additional query words: 6.00 buglist6.00 fixlist6.00a
Keywords : |
Last Reviewed: January 4, 2000 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |