From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Wed, 10 Apr 2024 14:38:10 +0000 (+0200) Subject: [3.12] gh-112536: Define `_Py_THREAD_SANITIZER` on GCC when TSan is enabled (GH-11770... X-Git-Tag: v3.12.4~256 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=04d07964f2ccb3169ab389e7cc36c7cf59deaf2c;p=thirdparty%2FPython%2Fcpython.git [3.12] gh-112536: Define `_Py_THREAD_SANITIZER` on GCC when TSan is enabled (GH-117702) (#117713) gh-112536: Define `_Py_THREAD_SANITIZER` on GCC when TSan is enabled (GH-117702) The `__has_feature(thread_sanitizer)` is a Clang-ism. Although new versions of GCC implement `__has_feature`, the `defined(__has_feature)` check still fails on GCC so we don't use that code path. (cherry picked from commit 79eec66e3dc277ea6ebad8c0b33756eea6a7ab3b) Co-authored-by: Sam Gross --- diff --git a/Include/pyport.h b/Include/pyport.h index 30b9c8ebc409..e2bac3bf5042 100644 --- a/Include/pyport.h +++ b/Include/pyport.h @@ -757,6 +757,9 @@ extern char * _getpty(int *, int, mode_t, int); # if defined(__SANITIZE_ADDRESS__) # define _Py_ADDRESS_SANITIZER # endif +# if defined(__SANITIZE_THREAD__) +# define _Py_THREAD_SANITIZER +# endif #endif