diff --git a/compat/aligned_alloc.c b/compat/aligned_alloc.c index 02881eeeb0..d03299d25f 100644 --- a/compat/aligned_alloc.c +++ b/compat/aligned_alloc.c @@ -23,6 +23,8 @@ #endif #include +#include +#include #include #include #if !defined (HAVE_POSIX_MEMALIGN) @@ -59,9 +61,8 @@ void *aligned_alloc(size_t align, size_t size) #elif defined (_WIN32) && defined(_MSC_VER) return _aligned_malloc(size, align); #else -#warning unsupported aligned allocation! - if (size > 0) - errno = ENOMEM; - return NULL; + /* align must be valid/supported */ + assert(align <= alignof (max_align_t)); + return malloc(((void) align, size)); #endif }