Microsoft KB Archive/30377

= FIX: Error Message A2051 Incorrectly Generated =

Article ID: 30377

Article Last Modified on 10/16/2003

-

APPLIES TO


 * Microsoft Macro Assembler 5.1 Standard Edition
 * Microsoft Macro Assembler 5.1a

-



This article was previously published under Q30377



SYMPTOMS
The code given below generates the following error message:

A2051: Operand not in current CS ASSUME segment

The error is caused by the JE NEAR PTR statement. However, the first jump statement assembles without error. Both statements should or should not assemble as they generate full 16-bit fixup records.



RESOLUTION
You can work around this problem by not using the PTR operator in the JE instruction.



STATUS
Microsoft has confirmed this to be a problem in Microsoft Macro Assembler (MASM) version 5.1 and 5.1a. This problem was corrected in MASM version 6.0.



MORE INFORMATION
The following code demonstrates the problem:

Sample Code
.386  PGROUP  group   CODE,NCODE CODE   segment use16 byte public 'prog' assume cs:PGROUP jmp    SYM je     near ptr SYM CODE   ends NCODE  segment use16 byte public 'prog' assume cs:PGROUP SYM: NCODE  ends end

Additional query words: 5.10 5.10a buglist5.10 buglist5.10a fixlist6.00

Keywords: kbfix KB30377

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.