diff options
Diffstat (limited to 'libsanitizer/sanitizer_common/sanitizer_mac.cpp')
-rw-r--r-- | libsanitizer/sanitizer_common/sanitizer_mac.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/libsanitizer/sanitizer_common/sanitizer_mac.cpp b/libsanitizer/sanitizer_common/sanitizer_mac.cpp index 1ae69e14b23..9ee799be3c8 100644 --- a/libsanitizer/sanitizer_common/sanitizer_mac.cpp +++ b/libsanitizer/sanitizer_common/sanitizer_mac.cpp @@ -38,7 +38,7 @@ extern char **environ; #endif -#if defined(__has_include) && __has_include(<os/trace.h>) +#if defined(__has_include) && __has_include(<os/trace.h>) && defined(__BLOCKS__) #define SANITIZER_OS_TRACE 1 #include <os/trace.h> #else @@ -71,7 +71,15 @@ extern "C" { #include <mach/mach_time.h> #include <mach/vm_statistics.h> #include <malloc/malloc.h> -#include <os/log.h> +#if defined(__has_builtin) && __has_builtin(__builtin_os_log_format) +# include <os/log.h> +#else + /* Without support for __builtin_os_log_format, fall back to the older + method. */ +# define OS_LOG_DEFAULT 0 +# define os_log_error(A,B,C) \ + asl_log(nullptr, nullptr, ASL_LEVEL_ERR, "%s", (C)); +#endif #include <pthread.h> #include <pthread/introspection.h> #include <sched.h> |