We currently offer three ALLOCATOR implementations:
ALLOCATOR = STANDARD as a good default (~200 bytes)
ALLOCATOR = SIMPLE smallest possible conforming malloc implementation (34 bytes). Doesn't actually "free" memory so it has some debugging value.
ALLOCATOR = CUSTOM user provides their own malloc/free/realloc implementation
It may also be valuable to provide ALLOCATOR = DEBUG, which can function similarly to some memory sanitizers. For example, uninitialized heap could be set to 0xFA, free'd memory can be set to 0xFB, malloc'ed memory can be set to 0xFC, and so on. The user can use this information to determine if they have a use after free, or etc.
We currently offer three
ALLOCATORimplementations:ALLOCATOR = STANDARDas a good default (~200 bytes)ALLOCATOR = SIMPLEsmallest possible conforming malloc implementation (34 bytes). Doesn't actually "free" memory so it has some debugging value.ALLOCATOR = CUSTOMuser provides their own malloc/free/realloc implementationIt may also be valuable to provide
ALLOCATOR = DEBUG, which can function similarly to some memory sanitizers. For example, uninitialized heap could be set to0xFA, free'd memory can be set to0xFB, malloc'ed memory can be set to0xFC, and so on. The user can use this information to determine if they have a use after free, or etc.