Browse Source
bpo-35214: Initial clang MemorySanitizer support (GH-10479)
bpo-35214: Initial clang MemorySanitizer support (GH-10479)
Adds configure flags for msan and ubsan builds to make it easier to enable. These also encode the detail that address sanitizer and memory sanitizer should disable pymalloc. Define MEMORY_SANITIZER when appropriate at build time and adds workarounds to existing code to mark things as initialized where the sanitizer is otherwise unable to determine that. This lets our build succeed under the memory sanitizer. not all tests pass without sanitizer failures yet but we're in pretty good shape after this.pull/10499/head
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 115 additions and 4 deletions
-
9Include/Python.h
-
4Misc/NEWS.d/next/Core and Builtins/2018-11-12-11-38-06.bpo-35214.PCHKbX.rst
-
11Modules/_ctypes/callproc.c
-
7Modules/_posixsubprocess.c
-
2Modules/faulthandler.c
-
9Python/bootstrap_hash.c
-
4Python/pymath.c
-
45configure
-
28configure.ac
@ -0,0 +1,4 @@ |
|||
The interpreter and extension modules have had annotations added so that |
|||
they work properly under clang's Memory Sanitizer. A new configure flag |
|||
--with-memory-sanitizer has been added to make test builds of this nature |
|||
easier to perform. |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue