[Bug sanitizer/87880] [9 regression] All macOS asan execution tests FAIL
iains at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Aug 16 08:52:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87880
Iain Sandoe <iains at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|WAITING |NEW
Summary|[9/10 regression] All macOS |[9 regression] All macOS
|asan execution tests FAIL |asan execution tests FAIL
--- Comment #14 from Iain Sandoe <iains at gcc dot gnu.org> ---
fixed on trunk.
NOTE: on earlier Darwin platforms (10.7-10.15) it is highly recommended to
build llvm-symbolizer and then:
export ASAN_SYMBOLIZER_PATH=/path/to/llvm-symbolizer
This is because the "atos" implementation for these versions does not seem to
be 100% compatible with the newer sanitisers - the effect is extremely long
timeouts on test fails (so we're talking about hours to run the asan.exp suite
if that happens). AFAIK, atos is not open-sourced for Darwin, so the best fix
is to use the LLVM version - which is.
---
The following modification is being tested for inclusion in 9.3 (it just makes
the additional check dependent on USING_MAC_INTERPOSE which is fine since the
symbol table for libasan is not affected by this on Darwin/Mac OS).
There is no soname bump needed for this (although, technically, the fault is
not fixed for non-Darwin, in practice the problem has not manifest there
anyway)
diff --git a/libsanitizer/asan/Makefile.am b/libsanitizer/asan/Makefile.am
index 867240d244..6efbc1df7f 100644
--- a/libsanitizer/asan/Makefile.am
+++ b/libsanitizer/asan/Makefile.am
@@ -5,7 +5,7 @@ gcc_version := $(shell @get_gcc_base_ver@
$(top_srcdir)/../gcc/BASE-VER)
DEFS = -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS
-D__STDC_LIMIT_MACROS -DASAN_HAS_EXCEPTIONS=1 -DASAN_NEEDS_SEGV=1
-DCAN_SANITIZE_UB=0
if USING_MAC_INTERPOSE
-DEFS += -DMAC_INTERPOSE_FUNCTIONS -DMISSING_BLOCKS_SUPPORT
+DEFS += -DMAC_INTERPOSE_FUNCTIONS -DMISSING_BLOCKS_SUPPORT
-DASAN_HAS_CXA_RETHROW_PRIMARY_EXCEPTION=0
endif
AM_CXXFLAGS = -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic
-Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti
-fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros
-fno-ipa-icf
AM_CXXFLAGS += $(LIBSTDCXX_RAW_CXX_CXXFLAGS)
More information about the Gcc-bugs
mailing list