[PATCH 10/17] Regex: Portability to non-GCC compilers.
Florian Weimer
fweimer@redhat.com
Fri Dec 8 11:04:00 GMT 2017
On 12/08/2017 10:47 AM, arnold@skeeve.com wrote:
> Florian Weimer <fweimer@redhat.com> wrote:
>
>> On 12/08/2017 10:16 AM, Arnold Robbins wrote:
>>> +#if !defined(__GNUC__) || __GNUC__ < 3
>>> + static short utf8_sb_map_inited = 0;
>>> +
>>> + if (! utf8_sb_map_inited)
>>> + {
>>> + int i;
>>> +
>>> + utf8_sb_map_inited = 0;
>>> + for (i = 0; i <= 0x80 / BITSET_WORD_BITS - 1; i++)
>>> + utf8_sb_map[i] = BITSET_WORD_MAX;
>>> + }
>>> +#endif
>>
>> This doesn't look like a good idea because it's not thread-safe.
>
> Is the rest of regex thread safe?
>
> I've no objection to something else that does the trick for GLIBC.
> Gawk doesn't have multiple threads.
It does not matter for glibc because it's compiled with GCC. It might
matter if this code is merged into gnulib, which is supposed to be
portable to many compilers and environments.
Thanks,
Florian
More information about the Libc-alpha
mailing list