Path: utzoo!utgpu!attcan!uunet!ginosko!rex!uflorida!gatech!ncar!tank!shamash!com50!midgard!dal
From: dal@midgard.Midgard.MN.ORG (Dale Schumacher)
Newsgroups: comp.lang.c
Subject: va_list used in 
Summary: va_list is used without being defined in 
Keywords: va_list, X3J11, vfprintf
Message-ID: <1140@midgard.Midgard.MN.ORG>
Date: 12 Aug 89 04:46:56 GMT
Reply-To: dal@midgard.Midgard.MN.ORG (Dale Schumacher)
Organization: The Midgard Realm, St Paul MN
Lines: 14

I'm working on the header files for a PD LIBC implementation with the
goal that it be as close as possible to X3J11 and POSIX conformance.
I'm working from the May 13, 1988 draft of the C pANS.

In the  header file, the v[fs]printf() function prototypes
use the va_list type, but va_list is not defined anywhere in .
The synopsis shows the need to #include both  and 
in order to use v[fs]printf(), but what about #include'ing  in
a program which doesn't use these functions?  The prototype would then
be an error, right?  Also, section 4.1.2 (the v[fs]printf() functions
are in 4.9.6.[789]) states "Headers may be included in any order; ...".
In order for the declaration to work,  must be #include'd first.
The standard also seems to imply that header files do not include each
other.  Is this the case?  Do I have an outdated draft of the standard?