Copyright Digital Equipment Corp. All rights reserved.

Description

   The va_start macro initializes the variable ap to the beginning
   of the argument list.

   The va_start_1 macro initializes ap to the address of an argument
   that is preceded by a known number of defined arguments. The
   printf function is an example of a C RTL function
   that contains a variable-length argument list offset from the
   beginning of the entire argument list. The variable-length
   argument list is offset by the address of the formatting string.

   When determining the value of the offset argument used in va_
   start_1, the implications of the OpenVMS calling standard must be
   considered.

   On OpenVMS Alpha and Integrity server systems, each argument item
   is a quadword.

                                  NOTE

      When accessing argument lists, especially those passed to a
      subroutine (written in C) by a program written in another
      programming language, consider the implications of the
      OpenVMS calling standard. For more information about the
      OpenVMS calling standard, see the VSI C User's Guide for
      OpenVMS Systems or the VSI OpenVMS Calling Standard.

   The preceding version of va_start and va_start_1 is specific to
   the C RTL, and is not portable.

   The following syntax describes the va_start macro in the
   <stdarg.h> header file, as defined in the ANSI C standard:

   Format

     #include  <stdarg.h> (ANSI C)

     void va_start  (va_list ap, parmN);