[Mesa-dev] [PATCH] util: remove redundant check for the __clang__ macro

Brian Paul brianp at vmware.com
Tue Feb 6 00:00:34 UTC 2018


I'm tempted to say the other places which only check for __GNUC__ should 
also check for __clang__, just to be move obvious (or does everyone know 
that __clang__ implies __GNUC_?).  Maybe others have an opinion.

Anyway, the location in question below seems to be first place this 
appears in the file so I'd suggest putting a simple comment there, like 
/* Note: Clang also sets __GNUC__ (see other cases below) */

-Brian

On 02/05/2018 02:41 PM, Vlad Golovkin wrote:
> In this file there are similar cases with macros PUBLIC, USED and
> ATTRIBUTE_NOINLINE, before defining which as __attribute__(...), code
> only checks for __GNUC__.
> Should I add comments there as well?
> 
> 2018-02-05 22:51 GMT+02:00 Brian Paul <brianp at vmware.com>:
>> On 02/05/2018 01:44 PM, Vlad Golovkin wrote:
>>>
>>> Clang defines __GNUC__ macro, so one doesn't need to check __clang__
>>> macro in this particular case.
>>
>>
>> Perhaps mention that in a comment below so there's no confusion.
>>
>> -Brian
>>
>>
>>> ---
>>>    src/util/macros.h | 2 +-
>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/src/util/macros.h b/src/util/macros.h
>>> index 432d513930..d36ca095d5 100644
>>> --- a/src/util/macros.h
>>> +++ b/src/util/macros.h
>>> @@ -138,7 +138,7 @@ do {                       \
>>>      /* Forced function inlining */
>>>    #ifndef ALWAYS_INLINE
>>> -#  if defined(__GNUC__) || defined(__clang__)
>>> +#  if defined(__GNUC__)
>>>    #    define ALWAYS_INLINE inline __attribute__((always_inline))
>>>    #  elif defined(_MSC_VER)
>>>    #    define ALWAYS_INLINE __forceinline
>>>
>>



More information about the mesa-dev mailing list