Subject: Re: bug#77476: [PATCH] Rename various hash functions to avoid clashing with GnuTLS.

From: Paul Eggert <[email-masked]>
Date: Sun, 20 Apr 2025 13:25:07 -0700

On 2025-04-20 01:04, Eli Zaretskii wrote:
>> GnuTLS incorrectly exports some Gnulib functions to the outside world,
>> and this breaks programs that use these function names for their own
>> purposes.
> Ah, okay.  So this is a clash of Gnulib with itself, due to incorrect
> visibility specs applied by GnuTLS...

The clash was not of Gnulib with itself, since the part of Gnulib that 
defines these symbols is not present in the Emacs tarball. Instead, the 
clash was between Emacs's hash_lookup and hash_string (defined in 
emacs/src/fns.c) and Gnulib's hash_lookup and hash_string (defined in 
gnulib/lib/hash.c) incorrectly exported by GnuTLS's x509 implementation, 
which is used by emacs/src/gnutls.c.