Subject: Re: [PATCH] git-compat-util: Avoid strcasecmp() being inlined

From: John Keeping <[email-masked]>
Date: Thu, 12 Sep 2013 11:14:19 +0100

On Thu, Sep 12, 2013 at 11:36:56AM +0200, Sebastian Schuberth wrote:
> > Just wondering if that is the root of the problem, or if maybe there is
> > something else subtle going on. Also, does __CRT_INLINE just turn into
> > "inline", or is there perhaps some other pre-processor magic going on?
> 
> This is the function definition from string.h after preprocessing:
> 
> extern __inline__ int __attribute__((__cdecl__)) __attribute__ ((__nothrow__))
> strncasecmp (const char * __sz1, const char * __sz2, size_t __sizeMaxCompare)
>   {return _strnicmp (__sz1, __sz2, __sizeMaxCompare);}

I wonder if GCC has changed it's behaviour to more closely match C99.
Clang as a compatibility article about this sort of issue:

    http://clang.llvm.org/compatibility.html#inline