https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87880
--- Comment #7 from Iain Sandoe <iains at gcc dot gnu.org> --- I do not see any wholesale fail of asan when building/testing on darwin16 for minversion darwin14 (using the darwin14 SDK). Here, the symbol shows as dynamically looked-up. (this _is_ a problem in fact [although a different one from what you're seeing]) ** since AFAIR dyld will fall back to looking in /usr/lib for the dynamic lookup and that would resolve a symbol from a different unwinder stack from the one in actual use. *sigh* the presence of two unwinder/c++abi impls. remains the largest pain on the platform. ==== anyway, assuming that the symbol is present in /usr/lib/libc++abi.dylib for both the cases you mention [*and* the mojave dyld lookup rules haven't changed] it's not clear to me why you're failing with a "symbol not found" at runtime. $ nm -mapv x86_64-apple-darwin14/libsanitizer/asan/.libs/libasan.dylib |grep cxa_rethrow_primary_exception 0000000000018180 - 01 0000 FUN _wrap___cxa_rethrow_primary_exception 00000000000c73b0 - 10 0000 STSYM __ZL44substitution___cxa_rethrow_primary_exception 0000000000018180 (__TEXT,__text) non-external (was a private external) _wrap___cxa_rethrow_primary_exception 00000000000c73b0 (__DATA,__interpose) non-external __ZL44substitution___cxa_rethrow_primary_exception (undefined) external ___cxa_rethrow_primary_exception (dynamically looked up)