https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92143

--- Comment #1 from Jonathan Wakely <redi at gcc dot gnu.org> ---
We increase the alignment when calling posix_memalign, so that shouldn't be the
problem:

static inline void*
aligned_alloc (std::size_t al, std::size_t sz)
{
  void *ptr;
  // posix_memalign has additional requirement, not present on aligned_alloc:
  // The value of alignment shall be a power of two multiple of sizeof(void *).
  if (al < sizeof(void*))
    al = sizeof(void*);
  int ret = posix_memalign (&ptr, al, sz);
  if (ret == 0)
    return ptr;
  return nullptr;
}

Reply via email to