diff --git a/compiler-rt/lib/asan/asan_interceptors.h b/compiler-rt/lib/asan/asan_interceptors.h --- a/compiler-rt/lib/asan/asan_interceptors.h +++ b/compiler-rt/lib/asan/asan_interceptors.h @@ -123,15 +123,13 @@ #define ASAN_INTERCEPT_FUNC(name) \ do { \ INTERCEPT_FUNCTION(name); \ - bool same = (& (name) == & WRAP(name)); \ - if ((!same || !REAL(name))) \ + if (&(name) != &WRAP(name) || !REAL(name)) \ VReport(1, "AddressSanitizer: failed to intercept '" #name "'\n"); \ } while (0) #define ASAN_INTERCEPT_FUNC_VER(name, ver) \ do { \ INTERCEPT_FUNCTION_VER(name, ver); \ - name##_type ptr = (::__interception::real_##name); \ - if ((!ptr || !REAL(name))) \ + if (&(name) != &WRAP(name) || !REAL(name)) \ VReport( \ 1, "AddressSanitizer: failed to intercept '" #name "@@" #ver "'\n"); \ } while (0) diff --git a/compiler-rt/lib/msan/msan_interceptors.cc b/compiler-rt/lib/msan/msan_interceptors.cc --- a/compiler-rt/lib/msan/msan_interceptors.cc +++ b/compiler-rt/lib/msan/msan_interceptors.cc @@ -1244,8 +1244,7 @@ #define MSAN_INTERCEPT_FUNC(name) \ do { \ INTERCEPT_FUNCTION(name); \ - bool same = (& (name) == & WRAP(name)); \ - if ((!same || !REAL(name))) \ + if (&(name) != &WRAP(name) || !REAL(name)) \ VReport(1, "MemorySanitizer: failed to intercept '" #name "'\n"); \ } while (0) @@ -1253,7 +1252,7 @@ do { \ INTERCEPT_FUNCTION_VER(name, ver); \ name##_type ptr = (::__interception::real_##name); \ - if ((!ptr || !REAL(name))) \ + if (&(name) != &WRAP(name) || !REAL(name)) \ VReport( \ 1, "MemorySanitizer: failed to intercept '" #name "@@" #ver "'\n"); \ } while (0)