Microsoft KB Archive/23474

Performing Macro Substitutions in Logical Expressions ID Number: Q23474

1.25-5.00 MS-DOS

Problem: When scanning logical expressions, MASM should not perform macro substitutions. If “AND” is defined as a macro, the statement “IF X AND Y” will cause error 28, “operator expected”.

Response: The operator “AND” is a boolean operator. It should not be redefined as a macro. A workaround is to use a different variable name for your macro.