you're operating with void**, not void*, so what's undefined the undefined behaviour isn't visbible in the diff, but it's *preallocs[prealloc_idx] += (intptr_t)ptr; ah that sure is evil elenril: how evil is it on a scale of 1 to interlace about scattering theory-level evil not as bad as interlacing