[Sanitizer] Fix type for placement new on 32-bit Mac
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158524 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/sanitizer_common/sanitizer_placement_new.h b/lib/sanitizer_common/sanitizer_placement_new.h
index 292e167..4dd71ae 100644
--- a/lib/sanitizer_common/sanitizer_placement_new.h
+++ b/lib/sanitizer_common/sanitizer_placement_new.h
@@ -18,14 +18,16 @@
#include "sanitizer_internal_defs.h"
-#if __WORDSIZE == 64
-inline void *operator new(__sanitizer::uptr sz, void *p) {
- return p;
-}
+namespace __sanitizer {
+#if (__WORDSIZE == 64) || defined(__APPLE__)
+typedef __sanitizer::uptr operator_new_ptr_type;
#else
-inline void *operator new(__sanitizer::u32 sz, void *p) {
+typedef __sanitizer::u32 operator_new_ptr_type;
+#endif
+} // namespace __sanitizer
+
+inline void *operator new(operator_new_ptr_type sz, void *p) {
return p;
}
-#endif
#endif // SANITIZER_PLACEMENT_NEW_H