SHASM Error Messages 611-673

The following table shows SHASM error messages 611-673.

Message # and Severity Message Text Explanation
611 ERROR A macro name is required for .MACRO A macro name must be specified with the .MACRO directive. In particular, the macro name goes on the right side of the .MACRO directive (in the first operand position, not in the label position).
612 ERROR Syntax error in macro name for .MACRO The assembler encountered something that does not look like a symbol name immediately following a .MACRO directive.
619 ERROR Invalid macro parameter name "%s" A macro parameter name was specified that begins with a number. This is not permitted.
622 ERROR No matching paren for macro expansion exclusion The assembler was not able to find a ) to match a \( which it encountered in a macro expansion. The macro expansion exclusion syntax \( ... ) is not allowed to start on one line and end on another line; it must all occur on a single line of the macro.
624 ERROR Too many macro parameters (max %d) The macro used has too many parameters (operands).
631 ERROR %s without matching %s The .AENDI or .AENDR or .AENDW given does not seem to have a matching .AIF, .AREPEAT, or .AWHILE. This error also appears if one of these constructs is nested inside another, and the end directive for the inner one is omitted.
632 ERROR Cannot have %s after .AELSE An .AELSIF or an .AELSE cannot be put after an .AELSE in the same .AIF block.
633 ERROR %s still active at end of "%s" macro expansion An .AIF, .AREPEAT, .AWHILE, or .MACRO (macro definition) was still in progress when the end of a macro was reached. These constructs cannot span macro boundaries.
634 ERROR %s from line %d still active at end of file %s An .AIF, .AREPEAT, .AWHILE, or .MACRO (macro definition) was still in progress when the end of a file was reached. These constructs cannot span file boundaries.
635 ERROR .EXITM outside of any .AREPEAT, .AWHILE, or macro The assembler encountered an .EXITM directive that seems to be stranded without any loop or macro to exit from. This message might also be issued if a previous error caused the assembler to ignore the beginning of such a construct.
636 ERROR .END with %s still active The assembler encountered an .END directive while an .AIF, .AREPEAT, .AWHILE, or macro expansion was still in progress. The assembler ignores the .END directive in this case.
670 ERROR This syntax is only legal in a macro: "%s" A special facility was used that is only available when a macro is being expanded, for example, in a macro body).
671 ERROR Syntax error in macro arguments The assembler was unable to parse one or more of the arguments to a macro. It tries to continue as best it can.
672 ERROR End of file reached while processing %s An .AIF, .AREPEAT, .AWHILE, or .MACRO (macro definition) was still in progress when the end of a file was reached. These constructs cannot span file boundaries. Error 634 is more expected than this one.
673 ERROR Unknown macro parameter name "%s" A macro parameter name was referenced that is not defined for the macro currently being expanded. In the case of nested macro expansion, only the arguments of the innermost active macro are accessible.

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.