On 08/05/2016 03:49 PM, H.Loom wrote:
On Friday, 5 August 2016 at 21:25:41 UTC, Ali Çehreli wrote:
malloc stores the allocation size and other information right before
the pointer that it returns.

TIL. Is it guaranteed for any malloc implementation ? I'm a bit surpised
to read that. I thought these kind of trick was only used for aligned
allocations !

Not guaranteed of course but it's a common technique. Here is an implementation:

  https://code.woboq.org/userspace/glibc/malloc/malloc.c.html#1116

As I had suspected, the imprecision in my test code comes from low order bits being used as flags (P and M in that source code).

And I think malloc always returns memory properly aligned. After all, the user should be able to put anything there.

Ali

Reply via email to