The information in this article applies to:
SYMPTOMSThe Microsoft Macro Assembler (MASM) version 6.0 may generate incorrect code when a near call is made to a procedure in another segment. When a call is made from an offset greater that 0FDh in the calling segment to a procedure declared in the same source file, the call is made to an incorrect offset. RESOLUTIONTo work around this problem, code the procedure in another module and declare it as external in the problem module. STATUSMicrosoft has confirmed this to be a problem in MASM version 6.0. This problem was corrected in MASM version 6.0a. MORE INFORMATION
The sample program below illustrates this problem. It defines two
segments that are defined in the same group. Calls are being made from
different offsets in the file. All calls after offset 0FDh are made to
incorrect addresses rather than being set up as relocatable calls.
The correct code that should be generated would appear as follows:
Sample Code
Additional query words: 6.00 buglist6.00 fixlist6.00a
Keywords : |
Last Reviewed: January 4, 2000 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |