Library /sys$common/syshlp/helplib.hlb  —  CRTL  _tolower, Description
    The _tolower macro is equivalent to the tolower function except
    that its argument must be an uppercase letter (not lowercase, not
    EOF).

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

    To keep the older, optimized _tolower macro behavior, compile
    with /DEFINE=_FAST_TOUPPER. Then, as in previous releases, _
    tolower optimizes the call to avoid the overhead of a runtime
    call. The parameters are checked to determine how to calculate
    the result, thereby creating unwanted side effects. Therefore,
    when compiling with /DEFINE=_FAST_TOUPPER, do not use the _
    tolower macro with arguments that contain side-effect operations.
    For instance, the following example will not return the expected
    result:

    d = _tolower (C++);
Close Help