diff --git a/src/plugins/e-acsl/share/e-acsl/e_acsl_malloc.h b/src/plugins/e-acsl/share/e-acsl/e_acsl_malloc.h
index af84b0336ec703216fd5a0e775506393e2b6a86d..ae3777f983278f4b1b8827412711b1507f5e549b 100644
--- a/src/plugins/e-acsl/share/e-acsl/e_acsl_malloc.h
+++ b/src/plugins/e-acsl/share/e-acsl/e_acsl_malloc.h
@@ -24,12 +24,13 @@
 /* Bindings for memory allocation */
 /**********************************/
 
+#include <features.h>
+#include <stddef.h>
+
 #ifndef E_ACSL_MALLOC
 #define E_ACSL_MALLOC
 
-#include <stddef.h>
-
-#ifndef __GLIBC__
+#ifdef __GLIBC__
 /* Real functions for dynamic memory allocation in Glibc */
 extern void  *__libc_malloc(size_t);
 extern void  *__libc_realloc(void*, size_t);