Definition of free_many is moved to the .c file, no particular reason
for it to be inline and we can make the header file shorter.
assert_not_reached();
return sz;
}
+
+void free_many(void **p, size_t n) {
+ assert(p || n == 0);
+
+ FOREACH_ARRAY(i, p, n)
+ *i = mfree(*i);
+}
VOID_0))
/* Free every element of the array. */
-static inline void free_many(void **p, size_t n) {
- assert(p || n == 0);
-
- FOREACH_ARRAY(i, p, n)
- *i = mfree(*i);
-}
+void free_many(void **p, size_t n);
/* Typesafe wrapper for char** rather than void**. Unfortunately C won't implicitly cast this. */
static inline void free_many_charp(char **c, size_t n) {