Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!henry From: henry@utzoo.UUCP (Henry Spencer) Newsgroups: net.lang.c Subject: Re: gripe: variable arg lists Message-ID: <4655@utzoo.UUCP> Date: Mon, 19-Nov-84 13:06:06 EST Article-I.D.: utzoo.4655 Posted: Mon Nov 19 13:06:06 1984 Date-Received: Mon, 19-Nov-84 13:06:06 EST References: <348@gitpyr.UUCP> <3106@alice.UUCP> <4648@utzoo.UUCP> Organization: U of Toronto Zoology Lines: 31 > >Unfortunately, the ability to implement is, to some extent, > >machine-dependent. There are some machines where variable argument lists > >are very hard to do, and must be kludged in very machine-dependent ways. > > As long as they can be kludged. > That's why the definitions are hidden in an include file. That way, to > the user, they don't appear machine-dependant. You miss my point. I didn't say that the implementation of was machine-dependent; that's obvious. I said that the *ability* to implement is machine-dependent. There are machines on which that user interface to variable-length argument lists simply cannot be implemented, period. > How about another addition to , which, given a function, > its return type, and one of the (partially-used) va_list's, passes > the remaining arguments referred to by the va_list to the function? I haven't studied this closely, but I suspect that the same comment may apply: the ability to do this is machine-dependent. A partially-used argument list does not necessarily look like a shorter complete argument list. Hey, people, we've been over and over this point here and in unix-wizards: THERE IS NO FULLY PORTABLE WAY TO DO VARIABLE-LENGTH ARGUMENT LISTS IN C!!! Rebuttals by mail, please, so I can tell you why your idea won't work without needing to thrash this out AGAIN in front of everyone. -- Henry Spencer @ U of Toronto Zoology {allegra,ihnp4,linus,decvax}!utzoo!henry