#ifndef _TBB_malloc_proxy_H_
#define _TBB_malloc_proxy_H_
#define MALLOC_UNIXLIKE_OVERLOAD_ENABLED __linux__
#define MALLOC_ZONE_OVERLOAD_ENABLED __APPLE__
#if __unix__ || __APPLE__ || MALLOC_UNIXLIKE_OVERLOAD_ENABLED
#define MALLOC_CHECK_RECURSION 1
#endif
#include "oneapi/tbb/detail/_config.h"
#include <stddef.h>
extern "C" {
TBBMALLOC_EXPORT void __TBB_malloc_safer_free( void *ptr, void (*original_free)(void*));
TBBMALLOC_EXPORT void * __TBB_malloc_safer_realloc( void *ptr, size_t, void* );
TBBMALLOC_EXPORT void * __TBB_malloc_safer_aligned_realloc( void *ptr, size_t, size_t, void* );
TBBMALLOC_EXPORT size_t __TBB_malloc_safer_msize( void *ptr, size_t (*orig_msize_crt80d)(void*));
TBBMALLOC_EXPORT size_t __TBB_malloc_safer_aligned_msize( void *ptr, size_t, size_t, size_t (*orig_msize_crt80d)(void*,size_t,size_t));
#if MALLOC_ZONE_OVERLOAD_ENABLED
void __TBB_malloc_free_definite_size(void *object, size_t size);
#endif
}
struct orig_ptrs {
void (*free) (void*);
size_t (*msize)(void*);
};
struct orig_aligned_ptrs {
void (*aligned_free) (void*);
size_t (*aligned_msize)(void*,size_t,size_t);
};
#endif