Philippe Gerum wrote:
> On 07/24/2015 03:20 PM, Gilles Chanteperdrix wrote:
>>
>> git repository hosting wrote:
>>> Module: xenomai-3
>>> Branch: next
>>> Commit: 2a584d6763c64f9e566b5f53094d57dd72688857
>>> URL:
>>> http://git.xenomai.org/?p=xenomai-3.git;a=commit;h=2a584d6763c64f9e566b5f53094d57dd72688857
>>>
>>> Author: Philippe Gerum <[email protected]>
>>> Date:   Thu Jul 23 19:13:29 2015 +0200
>>>
>>> boilerplate: add offsetof() shorthand
>>>
>>> ---
>>>
>>>  include/boilerplate/compiler.h |    4 ++++
>>>  1 file changed, 4 insertions(+)
>>>
>>> diff --git a/include/boilerplate/compiler.h
>>> b/include/boilerplate/compiler.h
>>> index e27d165..876e004 100644
>>> --- a/include/boilerplate/compiler.h
>>> +++ b/include/boilerplate/compiler.h
>>> @@ -54,4 +54,8 @@
>>>  #define __aligned(__n)     __attribute__((aligned (__n)))
>>>  #endif
>>>
>>> +#ifndef offsetof
>>> +#define offsetof(__type, __member)  __builtin_offsetof(__type,
>>> __member)
>>> +#endif
>>
>> offsetof should be defined by glibc headers. By adding a definition, you
>> risk a compiler warning about multiple definitions if someone uses the
>> proper glibc header.
>>
>>
>
> There is hardly any risk of that kind when using the gcc builtin.
>

builtin or not, if I compile the following program:

#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>

#define offsetof(__type, __member)  __builtin_offsetof(__type,__member)

int main(void)
{
        printf("Hello\n");
        return EXIT_SUCCESS;
}

I get the following warning:

$ gcc -Wall -W -o foo foo.c
foo.c:5:0: warning: "offsetof" redefined [enabled by default]
 #define offsetof(__type, __member)  __builtin_offsetof(__type,__member)
 ^
In file included from /usr/include/alloca.h:24:0,
                 from /usr/include/stdlib.h:491,
                 from foo.c:3:
/usr/lib64/gcc/x86_64-slackware-linux/4.8.2/include/stddef.h:413:0: note:
this is the location of the previous definition
 #define offsetof(TYPE, MEMBER) __builtin_offsetof (TYPE, MEMBER)
 ^


-- 
                                            Gilles.
https://click-hack.org


_______________________________________________
Xenomai mailing list
[email protected]
http://xenomai.org/mailman/listinfo/xenomai

Reply via email to