From 6245cd45374f0db1e832ed81b1b7c60ef8f5784f Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 22 Nov 2017 11:23:01 -0800 Subject: [PATCH] regex: merge from glibc * lib/regcomp.c (init_word_char): Add comments. --- ChangeLog | 5 +++++ lib/regcomp.c | 3 +++ 2 files changed, 8 insertions(+) diff --git a/ChangeLog b/ChangeLog index 45823beabd..edcb62d081 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2017-11-22 Paul Eggert + + regex: merge from glibc + * lib/regcomp.c (init_word_char): Add comments. + 2017-11-20 Paul Eggert regex: merge from glibc diff --git a/lib/regcomp.c b/lib/regcomp.c index 6dc8d72b32..88539ad3e4 100644 --- a/lib/regcomp.c +++ b/lib/regcomp.c @@ -945,12 +945,15 @@ init_word_char (re_dfa_t *dfa) dfa->word_ops_used = 1; if (BE (dfa->map_notascii == 0, 1)) { + /* Avoid uint32_t and uint64_t as some non-GCC platforms lack + them, an issue when this code is used in Gnulib. */ bitset_word_t bits0 = 0x00000000; bitset_word_t bits1 = 0x03ff0000; bitset_word_t bits2 = 0x87fffffe; bitset_word_t bits3 = 0x07fffffe; if (BITSET_WORD_BITS == 64) { + /* Pacify gcc -Woverflow on 32-bit platformns. */ dfa->word_char[0] = bits1 << 31 << 1 | bits0; dfa->word_char[1] = bits3 << 31 << 1 | bits2; i = 2; -- 2.39.5