On Sat, Dec 28, 2024 at 10:47:05AM +0100, René Scharfe wrote: > @@ -141,5 +146,30 @@ int cmd_main(int argc UNUSED, const char *argv[] UNUSED) > check_int(in, ==, out); > } > > + if_test ("REFTABLE_ALLOC_GROW_OR_NULL works") { > + int *arr = NULL; > + size_t alloc = 0, old_alloc; > + > + REFTABLE_ALLOC_GROW_OR_NULL(arr, 1, alloc); > + check(arr != NULL); > + check_uint(alloc, >=, 1); > + arr[0] = 42; > + > + old_alloc = alloc; > + REFTABLE_ALLOC_GROW_OR_NULL(arr, old_alloc + 1, alloc); > + check(arr != NULL); > + check_uint(alloc, >, old_alloc); > + arr[alloc - 1] = 42; > + > + old_alloc = alloc; > + reftable_set_alloc(malloc, realloc_stub, free); > + REFTABLE_ALLOC_GROW_OR_NULL(arr, old_alloc + 1, alloc); > + check(arr == NULL); > + check_uint(alloc, ==, 0); > + reftable_set_alloc(malloc, realloc, free); > + > + reftable_free(arr); > + } > + Thanks for adding this test! Patrick