Re: [PATCH 8/8] Enable GIT_DEBUG_MEMCHECK on git_pathname()

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

 



On Thu, Nov 17, 2011 at 8:42 PM, Jeff King <peff@xxxxxxxx> wrote:
> On Thu, Nov 17, 2011 at 04:05:52PM +0530, Ramkumar Ramachandra wrote:
>
>> The macros __FILE__, __LINE__ and __VA_ARGS__ are gcc-specific
>> extensions, no?  I was curious to see if some other parts of Git are
>> using this: a quick grep returns mailmap.c and notes-merge.c.  They
>> both use __VA_ARGS__ it for debugging purposes.  So, nothing new.
>
> All three are in C99. I'm pretty sure __FILE__ and __LINE__ were
> available in C89, but I only have a copy of C99 handy these days.
> Variable-argument macros were definitely introduced in C99 (and were a
> gcc extension for a while before then).
>
>> What happens if GIT_DEBUG_MEMCHECK is set, but I'm not using gcc?
>> Also, it's probably worth mentioning in the commit message that this
>> debugging trick is gcc-specific.
>
> Older compilers will probably barf on the variable-argument macros.

Anyway to detect if __VA_ARGS__ is supported at compile time? I guess
#ifdef __GNUC__ is the last resort.

notes-merge.c introduces __VA_ARGS__ since v1.7.4 so we may want to do
something there too.
-- 
Duy
--
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]