From 4f5f00d82d4d959e6af27f1fb151145d54048799 Mon Sep 17 00:00:00 2001 From: Konstantin Belousov Date: Tue, 12 May 2020 18:12:20 +0000 Subject: [PATCH] Clear namespace pollution in include/malloc_np.h Do not include stdbool.h, it makes the header incompatible with some third-party code that typedefs bool manually. Remove inclusion of strings.h, which typically conflicts with the use of symbol 'index'. Separate inclusion of sys/cdefs.h is not needed because sys/types.h already handles that. Exp-run by: antoine (PR 245366) Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D24297 --- include/malloc_np.h | 36 +++++++++++++++++++++--------------- 1 file changed, 21 insertions(+), 15 deletions(-) diff --git a/include/malloc_np.h b/include/malloc_np.h index dca0dd50a62a..fc91cdbf9a90 100644 --- a/include/malloc_np.h +++ b/include/malloc_np.h @@ -33,29 +33,33 @@ #ifndef _MALLOC_NP_H_ #define _MALLOC_NP_H_ -#include + #include -#include -#include + +#ifdef __cplusplus +#define __MyBool bool +#else +#define __MyBool _Bool +#endif __BEGIN_DECLS typedef struct extent_hooks_s extent_hooks_t; -typedef void *(extent_alloc_t)(extent_hooks_t *, void *, size_t, size_t, bool *, - bool *, unsigned); -typedef bool (extent_dalloc_t)(extent_hooks_t *, void *, size_t, bool, +typedef void *(extent_alloc_t)(extent_hooks_t *, void *, size_t, size_t, + __MyBool *, __MyBool *, unsigned); +typedef __MyBool (extent_dalloc_t)(extent_hooks_t *, void *, size_t, __MyBool, unsigned); -typedef void (extent_destroy_t)(extent_hooks_t *, void *, size_t, bool, +typedef void (extent_destroy_t)(extent_hooks_t *, void *, size_t, __MyBool, unsigned); -typedef bool (extent_commit_t)(extent_hooks_t *, void *, size_t, size_t, size_t, - unsigned); -typedef bool (extent_decommit_t)(extent_hooks_t *, void *, size_t, size_t, +typedef __MyBool (extent_commit_t)(extent_hooks_t *, void *, size_t, size_t, size_t, unsigned); -typedef bool (extent_purge_t)(extent_hooks_t *, void *, size_t, size_t, size_t, +typedef __MyBool (extent_decommit_t)(extent_hooks_t *, void *, size_t, size_t, + size_t, unsigned); +typedef __MyBool (extent_purge_t)(extent_hooks_t *, void *, size_t, size_t, size_t, unsigned); -typedef bool (extent_split_t)(extent_hooks_t *, void *, size_t, size_t, size_t, - bool, unsigned); -typedef bool (extent_merge_t)(extent_hooks_t *, void *, size_t, void *, size_t, - bool, unsigned); +typedef __MyBool (extent_split_t)(extent_hooks_t *, void *, size_t, size_t, size_t, + __MyBool, unsigned); +typedef __MyBool (extent_merge_t)(extent_hooks_t *, void *, size_t, void *, size_t, + __MyBool, unsigned); struct extent_hooks_s { extent_alloc_t *alloc; extent_dalloc_t *dalloc; @@ -120,4 +124,6 @@ void __sdallocx(void *ptr, size_t size, int flags); size_t __nallocx(size_t size, int flags); __END_DECLS +#undef __MyBool + #endif /* _MALLOC_NP_H_ */