> + * lib/canonicalize.h, lib/dfa.h: > Add malloc-related attributes and include stdlib.h as needed.
More can be done in dfa.h: 2021-08-07 Bruno Haible <[email protected]> dfa: Improve GCC 11 allocation-deallocation checking. * lib/dfa.h (dfamust): Declare that deallocation must happen through dfamustfree. diff --git a/lib/dfa.h b/lib/dfa.h index 28f9f63..edc39dc 100644 --- a/lib/dfa.h +++ b/lib/dfa.h @@ -88,13 +88,16 @@ extern void dfacopysyntax (struct dfa *, struct dfa const *); /* Parse the given string of given length into the given struct dfa. */ extern void dfaparse (char const *, ptrdiff_t, struct dfa *); -/* Allocate and return a struct dfamust from a struct dfa that was - initialized by dfaparse and not yet given to dfacomp. */ -extern struct dfamust *dfamust (struct dfa const *); +struct dfamust; /* Free the storage held by the components of a struct dfamust. */ extern void dfamustfree (struct dfamust *); +/* Allocate and return a struct dfamust from a struct dfa that was + initialized by dfaparse and not yet given to dfacomp. */ +extern struct dfamust *dfamust (struct dfa const *) + _GL_ATTRIBUTE_DEALLOC (dfamustfree, 1); + /* Compile the given string of the given length into the given struct dfa. The last argument says whether to build a searching or an exact matcher. A null first argument means the struct dfa has already been
