On Tue, Dec 06, 2022 at 12:12:32AM +0100, Ævar Arnfjörð Bjarmason wrote: > But if we *are* doing that then surely we should provide the full set of > functions. I.e. ALLOC() and ALLOC_ARRAY(), CALLOC() and CALLOC_ARRAY(), > and REALLOC() and REALLOC_ARRAY()? FWIW, I would be happy to see all of those (minus REALLOC(), as there is not really any point in growing or shrinking something with a fixed size). The biggest argument against them that I can see is that: struct foo *x = malloc(sizeof(*x)); is idiomatic C that newcomers to the project will easily understand, and: struct foo *x; ALLOC(x); is not. But it feels like we already crossed that bridge with ALLOC_ARRAY(), etc. -Peff