From: Bruno Haible Date: Sat, 7 Aug 2021 17:13:56 +0000 (+0200) Subject: bitsetv: Improve GCC 11 allocation-deallocation checking. X-Git-Tag: v1.0~2709 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=0e96b118662b70ffd89cb58f3f2857cecf3d9038;p=gnulib.git bitsetv: Improve GCC 11 allocation-deallocation checking. * lib/bitsetv.h (bitsetv_free): Move declaration up. (bitsetv_alloc, bitsetv_create): Declare that deallocation must happen through 'bitsetv_free'. --- diff --git a/ChangeLog b/ChangeLog index 6e4d3c2062..7d193dac0a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2021-08-07 Bruno Haible + bitsetv: Improve GCC 11 allocation-deallocation checking. + * lib/bitsetv.h (bitsetv_free): Move declaration up. + (bitsetv_alloc, bitsetv_create): Declare that deallocation must happen + through 'bitsetv_free'. + bitset: Improve GCC 11 allocation-deallocation checking. * lib/bitset.h (bitset_free): Move declaration up. (bitset_alloc, bitset_create): Declare that deallocation must happen diff --git a/lib/bitsetv.h b/lib/bitsetv.h index 72bf2779f2..2ab9b80863 100644 --- a/lib/bitsetv.h +++ b/lib/bitsetv.h @@ -25,16 +25,18 @@ typedef bitset * bitsetv; +/* Free vector of bitsets. Do nothing if NULL. */ +void bitsetv_free (bitsetv); + /* Create a vector of N_VECS bitsets, each of N_BITS, and of type TYPE. */ -bitsetv bitsetv_alloc (bitset_bindex, bitset_bindex, enum bitset_type); +bitsetv bitsetv_alloc (bitset_bindex, bitset_bindex, enum bitset_type) + _GL_ATTRIBUTE_DEALLOC (bitsetv_free, 1); /* Create a vector of N_VECS bitsets, each of N_BITS, and with attribute hints specified by ATTR. */ -bitsetv bitsetv_create (bitset_bindex, bitset_bindex, unsigned); - -/* Free vector of bitsets. Do nothing if NULL. */ -void bitsetv_free (bitsetv); +bitsetv bitsetv_create (bitset_bindex, bitset_bindex, unsigned) + _GL_ATTRIBUTE_DEALLOC (bitsetv_free, 1); /* Zero vector of bitsets. */ void bitsetv_zero (bitsetv);