forked from OSchip/llvm-project
parent
dc5c81330b
commit
acc348aad0
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
|
||||
|
|
Loading…
Reference in New Issue