diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-11-09 09:56:01 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2016-11-09 09:56:01 +0100 |
commit | cc8f00d614145bee1a806f7a171279380de7773f (patch) | |
tree | 6b971fece633599e12d9c8d6f9dc251959dc4fc1 | |
parent | 520ab224ca812287640930135d57bf9d781d4476 (diff) |
Fix warnings for linker sets
-rw-r--r-- | freebsd/sys/sys/linker_set.h | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/freebsd/sys/sys/linker_set.h b/freebsd/sys/sys/linker_set.h index 4dedcd91..c403d764 100644 --- a/freebsd/sys/sys/linker_set.h +++ b/freebsd/sys/sys/linker_set.h @@ -126,19 +126,21 @@ #define RWSET_DECLARE(set, ptype) \ RTEMS_BSD_DECLARE_RWSET(set, ptype *) -static __inline void * +static __inline __uintptr_t _linker_set_obfuscate(const void *marker) { /* Obfuscate the variable, so that the compiler cannot optimize */ __asm__("" : "+r" (marker)); - return (__DECONST(void *, marker)); + return ((__uintptr_t)marker); } #define SET_BEGIN(set) \ - _linker_set_obfuscate(__CONCAT(_bsd__start_set_,set)) + ((__typeof(&__CONCAT(_bsd__start_set_,set)[0])) \ + _linker_set_obfuscate(__CONCAT(_bsd__start_set_,set))) #define SET_LIMIT(set) \ - _linker_set_obfuscate(__CONCAT(_bsd__stop_set_,set)) + ((__typeof(&__CONCAT(_bsd__stop_set_,set)[0])) \ + _linker_set_obfuscate(__CONCAT(_bsd__stop_set_,set))) #endif /* __rtems__ */ /* |