mirror of
git://sourceware.org/git/newlib-cygwin.git
synced 2025-02-02 04:20:28 +08:00
gcc: quiet Wattribute for no_sanitize("address")
This is an unfortunate instance where the __has_attribute check does not function usefully. Gcc does have the attribute, but for gcc it only applies to functions, not variables, and trying to apply it to a variable generates Wattribute. So far we only apply the attribute to variables. Only enable the attribute for clang, for now. Reviewed by: Anton Rang <rang at acm.org> Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D22875
This commit is contained in:
parent
baa3465cf6
commit
60f7ea94ea
@ -709,8 +709,12 @@
|
||||
/* Function should not be analyzed. */
|
||||
#define __no_lock_analysis __lock_annotate(no_thread_safety_analysis)
|
||||
|
||||
/* Function or variable should not be sanitized, ie. by AddressSanitizer */
|
||||
#if __has_attribute(no_sanitize)
|
||||
/*
|
||||
* Function or variable should not be sanitized, i.e. by AddressSanitizer.
|
||||
* GCC has the nosanitize attribute, but as a function attribute only, and
|
||||
* warns on use as a variable attribute.
|
||||
*/
|
||||
#if __has_attribute(no_sanitize) && defined(__clang__)
|
||||
#define __nosanitizeaddress __attribute__((no_sanitize("address")))
|
||||
#else
|
||||
#define __nosanitizeaddress
|
||||
|
Loading…
x
Reference in New Issue
Block a user