llvm-svn: 352033
This commit is contained in:
Martin Liska 2019-01-24 08:46:06 +00:00
parent dc5c81330b
commit acc348aad0
2 changed files with 7 additions and 1 deletions

View File

@ -285,6 +285,12 @@
# define MSC_PREREQ(version) 0
#endif
#if defined(__arm64__) && SANITIZER_IOS
# define SANITIZER_NON_UNIQUE_TYPEINFO 1
#else
# define SANITIZER_NON_UNIQUE_TYPEINFO 0
#endif
// On linux, some architectures had an ABI transition from 64-bit long double
// (ie. same as double) to 128-bit long double. On those, glibc symbols
// involving long doubles come in two versions, and we need to pass the

View File

@ -117,7 +117,7 @@ static bool isDerivedFromAtOffset(const abi::__class_type_info *Derived,
const abi::__class_type_info *Base,
sptr Offset) {
if (Derived->__type_name == Base->__type_name ||
(Derived->__type_name[0] != '*' &&
(SANITIZER_NON_UNIQUE_TYPEINFO &&
!internal_strcmp(Derived->__type_name, Base->__type_name)))
return Offset == 0;