Commit Graph

3 Commits

Author SHA1 Message Date
Stephan Bergmann
67466a1975 Fix Python 3.5 sizeof(PyGC_Head) for UBSan
...by again using 'long double' instead of 'double' to "force worst-case
alignment," just like Python 3.3 used to do.  This fixes -fsanitize=alignment
failures like

> workdir/UnpackedTarball/python3/Modules/_ctypes/_ctypes.c:2923:10: runtime error: member access within misaligned address 0x6110007af498 for type 'CDataObject' (aka 'struct tagCDataObject'), which requires 16 byte alignment
> 0x6110007af498: note: pointer points here
>  ff ff ff ff  01 00 00 00 00 00 00 00  98 98 17 00 90 61 00 00  00 00 00 00 00 00 00 00  00 00 00 00
>               ^
>  GenericPyCData_new workdir/UnpackedTarball/python3/Modules/_ctypes/_ctypes.c:2923:10
>  PyCFuncPtr_new workdir/UnpackedTarball/python3/Modules/_ctypes/_ctypes.c:3385:29
>  type_call workdir/UnpackedTarball/python3/Objects/typeobject.c:908:11
>  [...]

during PythonTest_dbaccess_python.

Change-Id: I8cc65823e1bc65807ec30c97a9099462e55c996d
2015-10-27 10:12:47 +01:00
Stephan Bergmann
429876d12b Adapt patch
Change-Id: I7945eed053a671ad0c755284a372d16083e596b2
2015-10-26 10:42:09 +01:00
Stephan Bergmann
de386effc0 Make external/python3 play well with -fsanitize=address
Change-Id: I72a9ec9569bcd74e212ad98456a76869ac213221
2014-05-08 17:49:57 +02:00