[Sanitizer] extend internal libc with stat/fstat/lstat functions
[blocksruntime.git] / lib / sanitizer_common / sanitizer_placement_new.h
blobc0b85e1c17178691f0a760a51e0cde1010e06c4f
1 //===-- sanitizer_placement_new.h -------------------------------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file is shared between AddressSanitizer and ThreadSanitizer
11 // run-time libraries.
13 // The file provides 'placement new'.
14 // Do not include it into header files, only into source files.
15 //===----------------------------------------------------------------------===//
16 #ifndef SANITIZER_PLACEMENT_NEW_H
17 #define SANITIZER_PLACEMENT_NEW_H
19 #include "sanitizer_internal_defs.h"
21 namespace __sanitizer {
22 #if (SANITIZER_WORDSIZE == 64) || defined(__APPLE__)
23 typedef uptr operator_new_ptr_type;
24 #else
25 typedef u32 operator_new_ptr_type;
26 #endif
27 } // namespace __sanitizer
29 inline void *operator new(__sanitizer::operator_new_ptr_type sz, void *p) {
30 return p;
33 #endif // SANITIZER_PLACEMENT_NEW_H