Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!bellcore!decvax!decwrl!pyramid!hplabs!sdcrdcf!usc-oberon!blarson From: blarson@usc-oberon.UUCP Newsgroups: net.lang.c Subject: varargs Message-ID: <293@usc-oberon.UUCP> Date: Sun, 20-Apr-86 23:13:36 EST Article-I.D.: usc-ober.293 Posted: Sun Apr 20 23:13:36 1986 Date-Received: Wed, 23-Apr-86 13:04:45 EST Reply-To: blarson@usc-oberon.UUCP (Bob Larson) Organization: USC Computing Services, Los Angeles Lines: 25 I just wrote the varargs.h header file for os9/68000 from the 4.2 BSD documentation, (rather than hacking up the non-portable code in microemacs) and would like a few clarifacations: Must va_alist be the only thing in the argument list? (If this is not true, I don't see how to implement varargs with this compiler.) (The example in the documentation seems to back up my assumption.) Is it leagal to pass a the rest of an argument list to another function expecting it? If so, should it be passed as a pointer to a variable of type va_list? (Without this capability, I supose I'll have to document this as a non-portable use of varargs.) I assume va_start be done in the original function. (Dito the first va_alist comment.) Does va_end have to be done in the original function also? (va_end does nothing in my implementation.) Thanks. I do plan on making this available to other os9/68000 users, preferably by talking microware into distributing it with the next release of thier C compiler. -- Bob Larson Arpa: Blarson@Usc-Ecl.Arpa Uucp: ihnp4!sdcrdcf!usc-oberon!blarson