Assembly Language Help (alang.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Disable/Enable Keyword Recognition
                                             Up Contents Index Back
────────────────────────────────────────────────────────────────────────────
 
  Syntax:   OPTION NOKEYWORD:<keywordlist>
 
  See also: MASM 5.1 Compatibility
 
  Description:
 
     Disables the recognition of the reserved words in <keywordlist>
     for the current module. The listed keywords can then be used as
     user-defined symbols. Keywords disabled with this directive cannot
     be reenabled. The <keywordlist> is a space-delimited list of
     reserved words; literal operands and predefined symbols are not
     allowed. The list of keywords must be enclosed in angle brackets (<>).
 
     You can use this option to disable privileged instruction names
     or obsolete synonyms so they are free to be used as labels and
     variables. For example:
 
               OPTION  NOKEYWORD: <STR EXTRN IRPC>
          STR  BYTE    10 DUP (?)
 
     MASM 6.1 has several new keywords that MASM 5.1 does not recognize as
     reserved. To resolve any conflicts, you can rename any offending symbols
     in your code, or selectively disable keywords with the OPTION NOKEYWORD
     directive.
 
     The second option lets you retain the offending symbol names in your code
     by forcing MASM 6.1 to not recognize them as keywords. For example,
 
          OPTION NOKEYWORD:<INVOKE STRUCT>
 
     removes the keywords INVOKE and STRUCT from the assembler's list of
     reserved words. However, you cannot then use the keywords in their
     intended function, since the assembler will no longer recognize them.
                                    -♦-