DOCERR: External Addresses in "=" Directive (35803)
The information in this article applies to:
- Microsoft Macro Assembler (MASM) 5.0
- Microsoft Macro Assembler (MASM) 5.1
- Microsoft Macro Assembler (MASM) 5.1a
- Microsoft Macro Assembler (MASM) 6.0
- Microsoft Macro Assembler (MASM) 6.0a
- Microsoft Macro Assembler (MASM) 6.0b
This article was previously published under Q35803 SYMPTOMS
On page 214, section 11.1.1, of the "Microsoft Macro Assembler 5.1
Programmer's Guide", the documentation indicates that the equal sign (=)
directive may be used with expressions that evaluate to an address.
However, if the address refers to an external label, MASM 5.1 and 5.1a will
generate the error:
error A2052: Improper operand type
MASM 6.0, 6.0a, and 6.0b will generate the error:
error A2026: constant expected
CAUSE
MASM has a restriction that the (=) directive can not be used on an
external address.
RESOLUTION
You can use the EQU directive to create an alias for an external address.
Modification Type: | Minor | Last Reviewed: | 11/19/2003 |
---|
Keywords: | KB35803 |
---|
|