On Mon, Jul 21, 2003 at 01:23:21PM -0400, Leo Bicknell wrote: > In a message written on Mon, Jul 21, 2003 at 11:15:38AM -0600, Chad David wrote: > > Try cc -Wwrite-strings -Wcast-qual exec.c. > > > > You cannot simply cast away a const. > > Grumble, will someone give me all the warnings you want turned on so I > can work around all of them? :) > > % cat exec.c > > #include <unistd.h> > #include <paths.h> > #include <string.h> > > int main(int argc, char *const argv[], char *const envp[]) { > char *const execargv[] = { strdup(_PATH_BSHELL), strdup(NULL) }; > > execve(_PATH_BSHELL,execargv,envp); > > return 0; > } > % cc -Wwrite-strings -Wcast-qual exec.c > % cc -Wall exec.c
You can/should probably skip the strdup(NULL), or ensure V in malloc.conf :). I assumed it was obvious that you could copy the data, but I believe the intent of the original question was to find an alternative. As far as I know there isn't one. A const is a const, except in C++. -- Chad David [EMAIL PROTECTED] www.FreeBSD.org [EMAIL PROTECTED] ISSci Inc. Calgary, Alberta Canada _______________________________________________ [EMAIL PROTECTED] mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"