From bf10da5e834484e6ed18ab4b5328d6f35317cf7d Mon Sep 17 00:00:00 2001 From: Ivan Maidanski Date: Tue, 21 Nov 2017 00:17:51 +0300 Subject: [PATCH] Fix 'unknown attribute no_sanitize' compiler warnings for GCC (Cherry-pick commit bba7234a from 'master' branch.) * include/private/gc_priv.h [!GC_ATTR_NO_SANITIZE_ADDR && ADDRESS_SANITIZER && !AO_CLANG_PREREQ(3,8)] (GC_ATTR_NO_SANITIZE_ADDR): Define to __attribute__((no_sanitize_address)). * include/private/gc_priv.h [!GC_ATTR_NO_SANITIZE_MEMORY && MEMORY_SANITIZER && !AO_CLANG_PREREQ(3,8)] (GC_ATTR_NO_SANITIZE_MEMORY): Define to __attribute__((no_sanitize_memory)). --- include/private/gc_priv.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/include/private/gc_priv.h b/include/private/gc_priv.h index 771adb8f..4b36565d 100644 --- a/include/private/gc_priv.h +++ b/include/private/gc_priv.h @@ -156,18 +156,22 @@ typedef char * ptr_t; /* A generic pointer to which we can add */ #endif #ifndef GC_ATTR_NO_SANITIZE_ADDR -# ifdef ADDRESS_SANITIZER +# ifndef ADDRESS_SANITIZER +# define GC_ATTR_NO_SANITIZE_ADDR /* empty */ +# elif __clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 8) # define GC_ATTR_NO_SANITIZE_ADDR __attribute__((no_sanitize("address"))) # else -# define GC_ATTR_NO_SANITIZE_ADDR /* empty */ +# define GC_ATTR_NO_SANITIZE_ADDR __attribute__((no_sanitize_address)) # endif #endif /* !GC_ATTR_NO_SANITIZE_ADDR */ #ifndef GC_ATTR_NO_SANITIZE_MEMORY -# ifdef MEMORY_SANITIZER +# ifndef MEMORY_SANITIZER +# define GC_ATTR_NO_SANITIZE_MEMORY /* empty */ +# elif __clang_major__ > 3 || (__clang_major__ == 3 && __clang_minor__ >= 8) # define GC_ATTR_NO_SANITIZE_MEMORY __attribute__((no_sanitize("memory"))) # else -# define GC_ATTR_NO_SANITIZE_MEMORY /* empty */ +# define GC_ATTR_NO_SANITIZE_MEMORY __attribute__((no_sanitize_memory)) # endif #endif /* !GC_ATTR_NO_SANITIZE_MEMORY */ -- 2.50.1