This is the continuation of https://lists.gnu.org/archive/html/bug-gnulib/2020-11/msg00052.html and https://lists.gnu.org/archive/html/bug-gnulib/2020-11/msg00075.html which replaced bit-by-bit forward iterations with uses of ffs, as suggested by Bruno. This time, we replace bit-by-bit _backward_ iterations with uses of integrer_length.
The test suite passes with asan and ubsan. Bison's test suite passes, but this is irrelevant, since Bison does not depend on reverse iteration. I'll push it tomorrow, unless told otherwise. Cheers! Akim Demaille (7): bitset: tests: check BITSET_FOR_EACH_REVERSE bitset: style: sort header bitset: style: use consistent names bitset: use integrer_length in array implementation bitset: use integrer_length in vector implementation bitset: use integrer_length in list implementation bitset: use integrer_length in table implementation ChangeLog | 46 +++++++++++++++++++++++++++++++++++++++ lib/bitset/array.c | 19 ++++++++--------- lib/bitset/base.h | 52 +++++++++++++++++++++++++++++++-------------- lib/bitset/list.c | 38 ++++++++++++++++----------------- lib/bitset/table.c | 31 +++++++++++++-------------- lib/bitset/vector.c | 23 ++++++++++---------- modules/bitset | 1 + tests/test-bitset.c | 39 ++++++++++++++++++++++++++++++++++ 8 files changed, 175 insertions(+), 74 deletions(-) -- 2.29.2