bug 1083116 - build fails: malloc_decls.h conflicting types for 'malloc_usable_size' r=glandium

This commit is contained in:
Brad Lassey 2015-01-06 19:58:36 -05:00
parent 60ecf1aa35
commit 79a7544742
2 changed files with 18 additions and 5 deletions

View File

@ -3385,6 +3385,19 @@ MOZ_CHECK_HEADERS(alloca.h)
AC_CHECK_FUNCS(strndup posix_memalign memalign)
AC_CHECK_FUNCS(malloc_usable_size)
MALLOC_USABLE_SIZE_CONST_PTR=const
MOZ_CHECK_HEADERS([malloc.h], [
AC_MSG_CHECKING([whether malloc_usable_size definition can use const argument])
AC_TRY_COMPILE([#include <malloc.h>
#include <stddef.h>
size_t malloc_usable_size(const void *ptr);],
[return malloc_usable_size(0);],
AC_MSG_RESULT([yes]),
AC_MSG_RESULT([no])
MALLOC_USABLE_SIZE_CONST_PTR=)
])
AC_DEFINE_UNQUOTED([MALLOC_USABLE_SIZE_CONST_PTR],[$MALLOC_USABLE_SIZE_CONST_PTR])
dnl In newer bionic headers, valloc is built but not defined,
dnl so we check more carefully here.

View File

@ -15,11 +15,11 @@
# include "jemalloc_types.h"
# if defined(__linux__) && (!defined(MOZ_MEMORY_ANDROID) || ANDROID_VERSION < 19)
typedef void * usable_ptr_t;
# else
typedef const void * usable_ptr_t;
# endif
#ifndef MALLOC_USABLE_SIZE_CONST_PTR
#define MALLOC_USABLE_SIZE_CONST_PTR const
#endif
typedef MALLOC_USABLE_SIZE_CONST_PTR void * usable_ptr_t;
# define MALLOC_FUNCS_MALLOC 1
# define MALLOC_FUNCS_JEMALLOC 2