--- a/src/tbbmalloc_proxy/proxy.cpp +++ b/src/tbbmalloc_proxy/proxy.cpp @@ -24,7 +24,8 @@ // of aligned_alloc as required by new C++ standard, this makes it hard to // redefine aligned_alloc here. However, running on systems with new libc // version, it still needs it to be redefined, thus tricking system headers -#if defined(__GLIBC_PREREQ) && !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC +#if defined(__GLIBC_PREREQ) +#if !__GLIBC_PREREQ(2, 16) && _GLIBCXX_HAVE_ALIGNED_ALLOC // tell that there is no aligned_alloc #undef _GLIBCXX_HAVE_ALIGNED_ALLOC // trick to define another symbol instead @@ -32,7 +33,8 @@ // Fix the state and undefine the trick #include #undef aligned_alloc -#endif // defined(__GLIBC_PREREQ)&&!__GLIBC_PREREQ(2, 16)&&_GLIBCXX_HAVE_ALIGNED_ALLOC +#endif // !__GLIBC_PREREQ(2, 16)&&_GLIBCXX_HAVE_ALIGNED_ALLOC +#endif // defined(__GLIBC_PREREQ) #endif // __linux__ && !__ANDROID__ #include "proxy.h" @@ -253,6 +255,7 @@ return 1; } +#ifdef __GLIBC__ struct mallinfo mallinfo() __THROW { struct mallinfo m; @@ -260,6 +263,7 @@ return m; } +#endif #if __ANDROID__ // Android doesn't have malloc_usable_size, provide it to be compatible