Newsgroups: comp.bugs.sys5 Path: utzoo!utgpu!watserv1!watmath!att!cbnewsl!sethr From: sethr@cbnewsl.att.com (seth.r.rosenthal) Subject: Re: Annoying prototypes for execv* functions in V.4 Organization: AT&T Bell Laboratories Date: Thu, 31 Jan 91 17:40:39 GMT Message-ID: <1991Jan31.174039.17973@cbnewsl.att.com> Summary: POSIX? References: <3598@lupine.NCD.COM> Lines: 36 In article <3598@lupine.NCD.COM>, rfg@lupine.ncd.com (Ron Guilmette) writes: > If you use and/or sell System V Release 4 you may want to fix up your > file. > > It probably contains: > > extern int execv(const char *, char *const *); > extern int execve(const char *, char *const *, char *const *); > extern int execvp(const char *, char *const *); > These prototypes come right out of 1003.1-1990. That is why they are in SVR4. > I'm fairly sure that these declarations should be changed to: > > extern int execv(const char *, const char *const *); > extern int execve(const char *, const char *const *, const char *const *); > extern int execvp(const char *, const char *const *); > > If your company sells V.4 ports to the general public (either on your > company's own hardware or on somebody else's) I encourage you to fix > this annoying little problem in the systems that your company distributes > to its customers. > > Please don't make us all suffer with this annoying glitch. I personally wouldn't change unistd.h in this case. It will break your POSIX compliance. Seth Rosenthal Disclaimer: All opinions are my own not my employers'. (but in this case they may actually be the same)