* lib/regex_internal.h (struct re_backref_cache_entry): Use bitset_word_t as the type of eps_reachable_subexps_map, instead of unsigned short int. This fixes a bug I introduced to glibc in 2005-09-28T17:33:18Z!drep...@redhat.com (glibc commit 2c05d33f90861d074dc12808dafbde30f487b1a0, BZ #1302). Remove unused member 'unused'. --- ChangeLog | 8 ++++++++ lib/regex_internal.h | 3 +-- 2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog index df8d996c2..2336126b0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,13 @@ 2020-01-21 Paul Eggert <egg...@cs.ucla.edu> + regex: fix bug with >=16 subexpressions + * lib/regex_internal.h (struct re_backref_cache_entry): + Use bitset_word_t as the type of eps_reachable_subexps_map, + instead of unsigned short int. This fixes a bug I introduced + to glibc in 2005-09-28T17:33:18Z!drep...@redhat.com (glibc commit + 2c05d33f90861d074dc12808dafbde30f487b1a0, BZ #1302). + Remove unused member 'unused'. + regex: simplify definition of BITSET_WORD_BITS * config/srclist.txt: Remove regex.c, regex_internal.h temporarily. * lib/regex.c (__STDC_WANT_IEC_60559_BFP_EXT__): Define. diff --git a/lib/regex_internal.h b/lib/regex_internal.h index 30e921fef..13e15e21e 100644 --- a/lib/regex_internal.h +++ b/lib/regex_internal.h @@ -573,9 +573,8 @@ struct re_backref_cache_entry Idx str_idx; Idx subexp_from; Idx subexp_to; + bitset_word_t eps_reachable_subexps_map; char more; - char unused; - unsigned short int eps_reachable_subexps_map; }; typedef struct -- 2.24.1