diff --git a/src/ChangeLog b/src/ChangeLog index 8a6dc8644b8..64a7989a70f 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,9 @@ +2012-07-11 John Wiegley + + * alloc.c (mark_memory): Guard the "no_address_safety_analysis" + function attribute, so we only use it if it exists in the + compiler. + 2012-07-11 Dmitry Antipov Avoid call to strlen in fast_c_string_match_ignore_case. diff --git a/src/alloc.c b/src/alloc.c index 89f2c5dbed1..ac200254b8c 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -4641,12 +4641,14 @@ mark_maybe_pointer (void *p) static void mark_memory (void *start, void *end) -#ifdef __clang__ +#if defined (__clang__) && defined (__has_feature) +#if __has_feature(address_sanitizer) /* Do not allow -faddress-sanitizer to check this function, since it crosses the function stack boundary, and thus would yield many false positives. */ __attribute__((no_address_safety_analysis)) #endif +#endif { void **pp; int i;