Copyright Digital Equipment Corp. All rights reserved.

Using_Legacy__toupper_and__tolower_Behavior_(Integrity_servers,_Alpha)_

   As of OpenVMS Version 8.3, to comply with the C99 ANSI standard
   and X/Open Specification, the _tolower and _toupper macros by
   default do not evaluate their parameter more than once. They
   simply call their respective tolower or toupper function. This
   avoids side effects (such as i++ or function calls) where the
   user can tell how many times an expression is evaluated.

   To retain the older, optimized behavior of the _tolower and _
   toupper macros, compile with /DEFINE=_FAST_TOUPPER. Then, as
   in previous releases, these macros optimize the call to avoid
   the overhead of a runtime call. However, the macro's parameter
   is evaluated more than once to determine how to calculate the
   result, possibly creating unwanted side effects.