Re: [PATCH/RFC 4/4] Add interactive mode to git-shell for user-friendliness

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Kevin P. Fleming <kpfleming@xxxxxxxxxx> [100714 15:59]:
> On 07/14/2010 04:04 AM, Ævar Arnfjörð Bjarmason wrote:
> > On Wed, Jul 14, 2010 at 03:01, Greg Brockman <gdb@xxxxxxx> wrote:
> >> +               execl(prog, prog, (char *) NULL);
> >
> > Why the casting of NULL? It's not done in the builtin/help.c code.
> >
> > Anyway, if it was cast it should be to (const char *), shouldn't it?
>
> When a NULL sentinel is passed to a varargs function that only
> understands 'char *' arguments, the NULL must be cast specifically,
> otherwise it will appear in the varargs array as an int or a long.

To be more specific: If NULL is (void *)0 then it does not need to be
cast. Sadly the standard allows to define it as 0, and so it is on
some systems. So to be portable it needs to be cast to be a pointer,
otherwise the varargs argument is assumed to be an int.

	Bernhard R. Link
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]